简单的看几个例子就能大致明白它们的区别
let arr = [1,2,3]
for(let a in arr){
console.log("for in",a);
}
console.log('------------------');
for(let b of arr){
console.log("for of",b);
}
//for in 0
//for in 1
//for in 2
//------------------
//for of 1
//for of 2
//for of 3
通过上面来遍历数组发现,结果不一样,for in 打印出的是下标index
for of 打印的是值
那么这就简单了,for in适用于对象,for of 适用于数组
这是因为for...in循环出的是key,for...of循环出的是value
如果用for of 遍历对象会报错,for of 遍历对象的迭代器的values。
知道了for of 的用法那么对于以后的数组的遍历可以不再使用以前的方法了
let arr = [1,2,3,4]
for ( var i = 0 ;i < arr.length;i++){
console.log(i); //1,2,3,4
}
for(var i of arr){
console.log(i);//1,2,3,4
}