ie 7的数组映射方法错误
Array map method bug with ie 7
这是我的代码,它适用于除IE7:之外的所有浏览器
var sum = [0, 1, 2, 3, 4, 5, 6, 7, 8]
.map(function (x) { return parseInt(input[x]) * (10 - x); })
.reduce(function (x, y) { return x + y; }) % 11;
我如何解决它在所有浏览器中工作。
编辑:错误:对象不支持属性或方法"map"
您正在调用本机数组的map
方法,而IE7没有实现它(reduce
也是如此)。这是一个使用jQuery函数的解决方案,应该可以工作:
var acc = 0;
$.each($.map([0, 1, 2, 3, 4, 5, 6, 7, 8], function(x) {
return parseInt(input.charAt(x)) * (10 - x);
}), function(key, value) {
acc = acc + value;
});
var sum = acc % 11;
更重要的是,如果input
的键总是数字(并且你遍历了所有的数字),你可以删除具有如下代码的映射函数:
var acc = 0;
$.each(input, function(key,value) {
acc = acc + (parseInt(value) * (10 - key));
});
var sum = acc % 11;
希望能有所帮助。
相关文章:
- jQuery AJAX Post方法错误(语法错误)
- 如何从 MVC4 链接调用 Javascript 方法(错误 JavaScript 运行时错误:对象不支持此操作)
- 谷歌地图javascript多个方法错误
- 检查对话框是否为 Open 会引发“初始化前无法在对话框上调用方法”错误
- 当输入值已更改时,html() 方法错误
- 对象不支持 IE7 jQuery 中的此属性或方法错误
- jQuery.validation 在生日年龄验证中添加方法错误
- 木偶/骨干应用程序中没有方法错误
- 使用此 javascript 在 IE7 中收到“对象不支持此属性或方法”错误,以及选项卡未正确定位的问题
- “初始化前无法在工具提示上调用方法”错误,当我添加 jquery-ui 库时
- 谷歌图表绘制()方法错误类型时给定数据表
- Javascript:随机“对象没有方法”错误,即使使用 jquery.getScript()
- 在对象中调用对象方法 - 错误:无法读取未定义的属性
- 调用原型的重写方法,然后调用下一个原型的重写方法错误
- 方法错误:未定义方法名称
- “对象 [对象对象] 没有方法”错误在线,但不在本地主机上!为什么
- 对象在没有冲突后没有方法错误
- AJAX POST请求上没有方法错误轨道
- “
没有方法”错误,用于似乎存在的对象 - 对象在 JavaScript 中没有方法错误