-4

我的代码有什么问题,如下所示。它不适用于 IE 8 或更低版本。我怎样才能用普通for循环而不是改变它forEach

var mainItems = [];
[100305, 1003403, 1003511, 1003360, 1002328].forEach(function(id) {
//mainItems.forEach(function(id) {
    mainItems.push(items.filter(function(elem) {
        return elem.id == id;
    })[0])
})
4

2 回答 2

1

你可以简单地使用

 var mainItems = [];

var items = [100305, 1003403, 1003511, 1003360, 1002328];


for(var i=0;i<items.length;i++)   
  mainItems.push(items[i]);
于 2013-03-20T16:45:12.450 回答
0

Array.forEach是 ES5 规范的一部分,旧版浏览器不支持该规范。如果你打算使用 ES5 代码,你应该考虑包含一个shim,它增加了对不支持的浏览器的支持。

至于如何编写for循环,文档可以帮助您。

于 2013-03-20T16:46:00.193 回答