由于经常翻《javascript高级程设计》,里面的for in循环是这样遍历的,
var arr1 = [1,2,4,5,7,8,9,0];
for(var i in arr1){// for in 输出的是key value中的key值
console.log(i);// 输出的是1,2,3,4,5,6,7
}
//如果给arr1加上一个不是数值的属性
// 结果就是for of 对于数组来说它只返回是有数值的属性
arr1['foo'] = 'demo';
arr1['demo1'] = 16;
for (var j of arr1) {// for of 输出的是key value中的value值
console.log(j);// 输出的是1,2,4,5,7,8,9,0
}
console.log(arr1);
对比了一下for of可以得到key value中的value值。不过对于数组是有限制的,只输出是数值的属性。