当前位置:Gxlcms > JavaScript > jsIE8不支持forEach的解决方案

jsIE8不支持forEach的解决方案

时间:2021-07-01 10:21:17 帮助过:18人阅读

首先我们先来判断一下浏览器是否支持js的forEach,代码如下:

if (typeof Array.prototype.forEach != 'function') {
    //不支持,此时我们需要自己定义一个类似forEach功能的函数。
}

如果浏览器不支持forEach,我们就需要自己写一个foreach功能的函数。具体函数体请看下面代码:

function(callback){
      for (var i = 0; i < this.length; i++){
        callback.apply(this, [this[i], i, this]);
      }
}

所以,解决IE8不支持forEach的方法应该是这样的:

if (typeof Array.prototype.forEach != 'function') {
    Array.prototype.forEach = function(callback){
      for (var i = 0; i < this.length; i++){
        callback.apply(this, [this[i], i, this]);
      }
    };
}

如果你使用了js的插件,只需要将改代码放在插件代码开头即可。这样所以浏览器都支持js的foreach了。

人气教程排行