-->

WEB资讯

您的当前位置:首页 > 资讯 > JS

慎用 for (var index in items)

2024-04-13 11:50:43  来源:zfxfun 点击:27

JavaScript 循环数组的项,我们一般人用 for (var i = 0; i < items.length; i++),也有人用 for (var index in items)。

我们要慎用 for (var index in items),为什么呢?

如果我们对array进行扩展了,如增加了几个方法,比如删除方法或者copy方法,

Array. prototype.copy =  function () { };
var arr = [1, 2];
for ( var  index  in arr)
{
     alert( index);

}

使用 for (var index in items) 的时候就会把上面的几个方法也遍历一遍,会导致意想不到的错误,而且不易发现!

我们看到会弹出三个对话框,分别是:0、1、copy,也就是说除了项的数值索引 0、1,还多了一个 copy,而这个 copy 就是因为 Array.prototype.copy 扩展得到的。

所以说不要把 for (var index in items)  当作是 for (var i = 0; i < items.length; i++) 的一种简写,二者具有不同的意义。


可以使用jq的each代替,或者使用这个for (var i = 0; i < items.length; i++)代替,或者过滤掉都可以

(i p.params) {
  (i){
    ;
  }
  paramLen;
  strParams (i p.params[i] );
}


相关文章更多 >

© 2024版权所有 水水网

电话:171780793