for of 和 for in 的区别
- for-of 无法遍历 不可迭代对象
可迭代对象包括: Array,Map,Set,String,TypedArray,arguments等等
但for in 可以
var obj = {
a: 1,
b: [],
c: function () {}
};
for (var key of obj) {
console.log(key);
}
// 出错:
// Uncaught TypeError: obj is not iterable
var obj = {
a: 1,
b: [],
c: function () {}
};
for (var key in obj) {
console.log(key);
}
// 结果是:
// a
// b
// c
- for-of 遍历的是键值,for-in遍历的是键名(key)
var arr = [3, 5, 7]; for (var i in arr) { console.log(i); } // 结果是: // 0 // 1 // 2var arr = [3, 5, 7]; for (var i of arr) { console.log(i); } // 结果是: // 3 // 5 // 7

浙公网安备 33010602011771号