for of 循环数组,得到的是每一项的值
for in 循环数组,得到的是下标
let arr = [1,2,3]
for(let item of arr){
console.log(item); //打印 1 2 3
}
for(let item in arr){
console.log(item); //打印 0 1 2
}
for of 不可循环对象,报错,意思是此对象不可循环
let obj = {
a:1,
b:2,
c:3
}
for(let item of obj){
console.log(item); // 报错
}
for in 循环对象,得到的是每一项的key, 所以for in经常用来遍历对象,for of用来遍历数组
for(let item in obj){
console.log(item); //打印 a b c
console.log(obj[item]); //遍历对象,打印 1 2 3
}