哪些Web浏览器本身支持Array.forEach()
-
03-07-2019 - |
题
Firefox以外的哪些浏览器支持Array.forEach()? Mozilla说它是标准的扩展并且我意识到添加到数组原型是微不足道的,我只是想知道其他浏览器支持它吗?
解决方案
维基百科的 JavaScript 文章列出了浏览器的JS版本。 forEach是 JavaScript 1.6的一部分。所以大多数浏览器都支持它,除了Opera 9.02(我刚刚测试过)。 Opera 9.5(我刚刚安装!)支持它,以及indexOf for Array。
令人惊讶的是,它不是官方的。我在页面 Opera 9.5中的ECMAScript支持。也许这是一个忽视或者可能只是他们不想做广告的部分支持。
其他提示
我刚刚检查了另一个问题: JavaScript for ... in vs for
在kangax的 ECMAScript 5兼容性表上,Array.forEach获得了'是' '除了IE8以外的所有浏览器。
截至2011年9月,桌面设备上的IE浏览器共享为低于40%和至少有8%的浏览器是IE 9 一>。
换句话说,大约70%的桌面浏览器现在支持Array.forEach。显然,这个数字差异很大,取决于地域和其他因素 - 例如,一些地区或国家(如巴西)的Chrome用户比例较高,而一些(如中国)的IE6和IE8用户数量更多
我没有检查过,但移动支持(在WebKit和Opera浏览器上)可能更高。
由于IE不支持它(甚至不支持v8),我使用jQuery.each() - http://docs.jquery.com/Utilities/jQuery.each
所有现代浏览器,但IE。
Microsoft AJAX客户端库将此添加到Array原型中,因此如果您的站点中有该客户端库,那么您肯定会拥有它。
如果您需要所有浏览器支持此功能和其他JavaScript 1.6到1.8功能,我建议您使用可自定义的 jPaq 库。这些功能以Mozilla建议的方式实现。