ie数组不支持indexOf 方法解决

if(!Array.prototype.indexOf){

  Array.prototype.indexOf = function(obj){

    for(var i=0;i<this.length;i++){

      if(this[i] == obj){

        return i;

      }

    }

    return -1;

  };

}

时间: 2024-11-09 21:19:36

ie数组不支持indexOf 方法解决的相关文章

ie8下数组不支持indexOf方法解决方法

if (!Array.prototype.indexOf){ Array.prototype.indexOf = function(elt){ var len = this.length >>> 0;//调用的时候,this 不一定是 Array的原型,length不能得到保证,加上位运算后,可以将不确定的值转换成Number. var from = Number(arguments[1]) || 0;//arguments:存放参数的对象,详见:https://blog.csdn.ne

IE8数组不支持indexOf方法的解决办法

在使用indexof方法之前加上以下代码就可以了. if (!Array.prototype.indexOf){           Array.prototype.indexOf = function(elt /*, from*/){           var len = this.length >>> 0;           var from = Number(arguments[1]) || 0;           from = (from < 0)          

IE8不支持indexOf的解决办法

在IE8版本以下(含IE8)IE浏览都不支持数组的Indexof()方法,在使用indexOf方法前,执行一下下面的js就可以解决. 原理就是如果发现数组没有indexOf方法,会添加上这个方法. 放在脚本的上面即可 原文链接:解决浏览器不支持indexOf()方法的方案 // Production steps of ECMA-262, Edition 5, 15.4.4.14 // Reference: http://es5.github.io/#x15.4.4.14 if (!Array.p

js Array ie下不支持indexOf方法解决方案

在IE8下,js数组没有indexOf方法. 下面是我找到的解决办法: 在使用indexOf方法前,执行一下下面的js, 原理就是如果发现数组没有indexOf方法,会添加上这个方法. if (!Array.prototype.indexOf){  Array.prototype.indexOf = function(elt /*, from*/)  {    var len = this.length >>> 0; var from = Number(arguments[1]) ||

简单谈谈JS数组中的indexOf方法

前言 相信说到 indexOf 大家并不陌生,判断字符串是否包涵子字符串时特别常用,正则不熟练同学的利器.这篇文章就最近遇到的一个问题,用实例再说说说indexOf方法.本文是小知识点积累,不作为深入讨论的话题,因此这里没有解释indexOf()的第二个参数,相信大家都知道第二个参数的作用. String 类型的使用 温习一下大家熟知的字符串用法,举个 ? 1 2 3 4 5 let str = 'orange'; str.indexOf('o'); //0 str.indexOf('n');

Array(数组)对象--&gt;indexOf() 方法

1.定义和用法 indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置,即下标. 如果没有找到匹配的字符串则返回 -1. 语法: string.indexOf(searchvalue,start) 参数: searchvalue:规定需检索的字符串值. start:规定在字符串中开始检索的位置(下标) 注意: indexOf() 方法区分大小写. 举例1:查找首次出现2的位置下标 var arr = [1,2,3,4,5]; console.log(arr.indexOf(2)

C# 数组中的 indexOf 方法

var array=['REG','2018','2018']; array.indexOf('REG') // 0 array.indexOf('R') // -1 array.indexOf('2018′) // 1 array.indexOf(2018) // -1 arr.indexOf('orange') 输出 0 因为 'orange' 是数组的第 0 个元素,匹配到并返回下标. arr.indexOf('o') 输出 -1 因为此方法不会在每一个元素的基础上再次执行 indexOf

解决IE8不支持数组的indexOf方法

今天在测试IE8的时候,遇到数组不支持indexOf的问题,在使用indexOf 方法前,对Array的原型方法进行扩展. if (!Array.prototype.indexOf) { Array.prototype.indexOf = function(elt) { var len = this.length >>> 0; var from = Number(arguments[1]) || 0; from = (from < 0) ? Math.ceil(from) : Ma

IE8不支持数组的indexOf方法

在使用indexOf方法前,执行一下下面的js, 原理就是如果发现数组没有indexOf方法,会添加上这个方法. 代码如下: if (!Array.prototype.indexOf){  Array.prototype.indexOf = function(elt /*, from*/)  {    var len = this.length >>> 0; var from = Number(arguments[1]) || 0;    from = (from < 0)