8

我正在使用 gzip 算法的 javascript 实现,它适用于 Firefox 和 Chrome。但是使用 Internet Explorer 我收到以下错误:

不支持 forEach 方法!

代码:

deflate.deflate(data, level).forEach(function (byte) {
    putByte(byte, out);
});

我正在使用 Internet Explorer 9,它应该支持 forEach 方法。

有任何想法吗?

非常感谢!

4

2 回答 2

22

Array您可以尝试为不支持该方法的浏览器扩展该对象,如此处foreach的建议Array.forEach

一个例子是:

if (!Array.prototype.forEach) {
    Array.prototype.forEach = function(fn, scope) {
        for(var i = 0, len = this.length; i < len; ++i) {
            fn.call(scope, this[i], i, this);
        }
    }
}
于 2013-05-29T12:12:27.807 回答
0

IE9不支持forEach,你可以试试jquery。
前任:

$. each (function (byte) {
  putByte(byte, out);
});
于 2013-05-29T12:14:47.580 回答