for of 和 for in 的区别
1 var arr = ["f", "6", 3, "a", 7]; 2 var obj = { name: "shun", age: 18 };
1. for-in 遍历的是key
// for in 遍历普通数组 for (var i in arr) { // console.log(i); //打印的是下标 0 ,1,2,3,4 // console.log(arr[i]) // "f", "6", 3, "a", 7 } // for in 遍历普通对象 for (var i in obj) { // console.log(i); //name age // console.log(obj[i]); //"shun" 18 }
2. for-of(es6新增) 遍历的是值 for-of 无法遍历 不可迭代对象
1 // for of 遍历普通数组 2 for (var i of arr) { 3 // console.log(i); //"f", "6", 3, "a", 7 4 } 5 // for of 遍历普通对象 6 for (var i of obj) { 7 console.log(i); //报错 obj is not iterable 8 }