js中使用indexOf()方法是提示(对象不支持此属性或方法)如何解决?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js中使用indexOf()方法是提示(对象不支持此属性或方法)如何解决?相关的知识,希望对你有一定的参考价值。

参考技术A

js中使用indexOf()方法是提示(对象不支持此属性或方法)解决办法:

    “对象不支持此属性或方法” 表示 javascript对象没有这个方法,无法调用,比如
    A.B() 当A对象没有B方法的时候,会报这个异常。

    因为javascript是脚本语言,解释执行,所以只有在执行的过程中才会报错,而编译语言,像java,c等在编译的时候就会报错。

    A.indexOf() 在原生JS中只能用于String对象,比如var s=“123”; alert(s.indexOf("1")) // 不会报错

    var s=123; alert(s.indexOf("1")) // 报错,因为s是number,这时候你需要把s转换成string才可以运行。

如以上回答未解决问题,请尝试:

var parr = ["a","b","c","d"];

判断parr 数组中是否存在a

parr.indexOf("a")==-1 在ie8下会提示对象不支持indexOf属性或方法

解决办法:

用jquery里的$.inArray替代indexOf

$.inArray(“a”, parr)==-1

以上是关于js中使用indexOf()方法是提示(对象不支持此属性或方法)如何解决?的主要内容,如果未能解决你的问题,请参考以下文章

JS与IE8兼容问题 对象不支持此属性或方法

js错误提示:对象不支持此属性或方法。

IE: indexOf 导致“对象不支持此属性或方法”

IE8不支持数组的indexOf方法

js判断对象数组中是否存在某个对象

js 怎么判断一个值是不是是数组