终于解决了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)
? Math.ceil(from)
: Math.floor(from);
if (from < 0)
from += len;
for (; from < len; from++)
{
if (from in this &&
this[from] === elt)
return from;
}
return -1;
};
}
相关推荐
-
"PageMethods未定义"或"对象不支持此属性或方法"解决方法分享
1.检查web.config中是否加入对于asp.net ajax的支持的代码 2.检查ScriptManager中是否设置了EnableMethods=true 3.检查后台cs中是否引用的命名空间System.Web.Services或者加入了[System.Web.Services.WebMethod] 4.后台函数必须是public static 5. 还有一种情况就是,通常,有些人在复制这个aspx页面时,经常是连同,<%@ Page Language="C#" Aut
-
JavaScript中关于indexOf的使用方法与问题小结
这个方法相当有用,很多编程语言中都有相对应的实现,javascript中也不例外,然而当我在ie中运行如下代码时候: 复制代码 代码如下: var arr = [1,2,3]; alert(arr.indexOf(1)); 却被提示"对象不支持此属性和方法" .而在chrome,ff下去运行良好.遂去求问google大神,发现原来js中Array的indexOf方法在js1.6版本中才给予了实现,ie7,8中只实现到了js1.3版本,chrome为js1.7版本,ff为js1.8版本.
-
对象不支持此属性或方法: Session.CodePage = 936 解决方法
今天调试网站时在后台出现这样的错误,"Microsoft VBScript 运行时错误 '800a01b6' 对象不支持此属性或方法: 'Session.CodePage'" 在百度搜索查看到的答案又不是很全,大多都是含糊不清的.后来我自己研究了一下,原来还有个比较快的方法! 如果你出现以下信息: Microsoft VBScript 运行时错误 '800a01b6' 对象不支持此属性或方法: 'Session.CodePage' \include\sysCode.asp, line
-
对象不支持indexOf属性或方法的解决方法(必看)
var divarr = ["a","b","c","d"]; 判断divarr 数组中是否存在a divarr.indexOf("a")==-1 在ie8下会提示对象不支持indexOf属性或方法 解决办法: 用jquery里的$.inArray替代indexOf $.inArray("a", divarr)==-1 以上这篇对象不支持indexOf属性或方法的解决方法(必看)就
-
终于解决了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 =
-
js数组去重的方法总结
一.普通的方法去重 1.简单的去重方法 // 最简单数组去重法 /* * 新建一新数组,遍历传入数组,值不在新数组就push进该新数组中 * IE8以下不支持数组的indexOf方法 */ function uniq(array){ var temp = []; //一个新的临时数组 for(var i = 0; i < array.length; i++){ if(temp.indexOf(array[i]) == -1){ temp.push(array[i]); } } return te
-
JavaScript从数组的indexOf()深入之Object的Property机制
在JavaScript中,数组可以使用Array构造函数来创建,或使用[]快速创建,这也是首选的方法.数组是继承自Object的原型,并且他对typeof没有特殊的返回值,他只返回'object'. js中,可以说万物皆对象(object),一个数组也是一个对象(array). 很多对象都有很多很方便的方法 比如数组的push,concat,slice等等,但是如果一些对象,它没有实现这些方法,我们还是想使用这些功能.那该怎么办呢? 1.很多方法都提供了非常高效的实现, 我们可以仿照它们的实现.
-
关于ES6中数组新增的方法详解
目录 在ES6之前,创建数组的方式有2种: Array.find((item,indexArr,arr)=>{}) 掌握 Array.findIndex((item, index, Arr) => {}) 掌握 Array.flat()用于拉平嵌套的数组[推荐-超级好用] Array.at()返回对应下标的值[超级好用] Array.from() [掌握] Array.of() 了解 Array.includes的使用 扩展运算符 (...) 数组的空位 总结 在ES6之前,创建数组的方式有2
-
Javascript 数组去重的方法(四种)详解及实例代码
Javascript 数组去重的四种方法 四种算法来实现这个目的: 第一种方法: Array.prototype.unique1 = function () { var n = []; //一个新的临时数组 for (var i = 0; i < this.length; i++) //遍历当前数组 { //如果当前数组的第i已经保存进了临时数组,那么跳过, //否则把当前项push到临时数组里面 if (n.indexOf(this[i]) == -1) n.push(this[i]); }
-
javascript数组去重的方法汇总
四种算法来实现这个目的: 第一种: Array.prototype.unique1 = function () { var n = []; //一个新的临时数组 for (var i = 0; i < this.length; i++) //遍历当前数组 { //如果当前数组的第i已经保存进了临时数组,那么跳过, //否则把当前项push到临时数组里面 if (n.indexOf(this[i]) == -1) n.push(this[i]); } return n; } 第二种: Array.
-
快速解决C# android base-64 字符数组的无效长度问题
解决方法: 在android向C# 后台发送图片的时候,把图片转成字符串发送的时候出现 base-64 字符数组的无效长度 错误应该在传递参数前,使用Replace("+", "%2B"),后台接收后用Replace("%2B", "+"),这样一替换,问题就解决了 以上这篇快速解决C# android base-64 字符数组的无效长度问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.
-
解决vue无法侦听数组及对象属性的变化问题
一.数组 1.可以监听到的情况 如push.splice.=赋值(array=[1,2,3]) 2.无法监听到的情况 使用下标修改某个元素(这种比较常见) array[index] = 1 object.a = 3 直接修改数组length array.length = 5 3.解决方案 this.$set(array, index, data) - 这是个深度的修改,某些情况下可能导致你不希望的结果,因此最好还是慎用 this.dataArr = this.originArr this.$se
-
解决tensorflow/keras时出现数组维度不匹配问题
一.环境 Ubuntu 16.04 tensorflow 1.4.0 keras 2.1.3 二.训练数据时报错: ValueError: Error when checking target: expected model_2 to have shape (None, 3) but got array with shape (4, 1 原因:数组的维度不正确. 三.解决思路 一开始的想法:tensorflow 和 keras 的版本不兼容? 经过多次安装不同版本的tensorflow 和 ke
-
解决java 分割字符串成数组时,小圆点不能直接进行分割的问题
问题描述: String preStr = "a.b.c"; // 这里要把该字符串按小圆点进行分割,成"a","b","c" String[] string = preStr.split("."); // 直接这样写是不行的 正确的写法是,对小圆点进行转义 String[] string = preStr.split("\\."); 补充知识:Java中不使用split方法实现字符串分
随机推荐
- PowerShell 数组的多种录入方法
- SQL Server中将查询结果转换为Json格式脚本分享
- Java多线程ForkJoinPool实例详解
- java计算自然数中的水仙花数的方法分享
- Oracle 忘记密码的找回方法
- firefox下对ajax的onreadystatechange的支持情况分析
- VC实现动态菜单的创建方法
- PHP删除HTMl标签的三种解决方法
- Python实现多线程抓取网页功能实例详解
- 自动输出类的字段值实用代码分享
- 详谈innodb的锁(record,gap,Next-Key lock)
- 谈谈Android里的Context的使用实例
- php获取文章上一页与下一页的方法
- js判断浏览器是否支持html5
- Python中的random()方法的使用介绍
- Centos7.3下mysql5.7.18安装并修改初始密码的方法
- JavaScript中对象属性的添加和删除示例
- jQuery Easyui Tabs扩展根据自定义属性打开页签
- TextArea 控件的最大长度问题(js json)
- PHP的serialize序列化数据以及JSON格式化数据分析