在对 Array 原型进行扩展之后,使用如下语法,会多出来额外的成员:
data = [1, 2, 3];
for (var key in data) console.log ("key = " + key + ", value = " + data [key]);
解决方法也很简单,避免对 Array 对象使用这种语法即可。
推荐一种替代方案:
for (var i = 0, j = data; i < j.length; i++) console.log ("key = " + i + ", value = " + j [i]);
将数组引用到变量 j 上,可以让代码更简短,提升可读性。
如果需要多重循环,建议使用 Array 的 map 方法替代。