核心区别:获取的内容不同
- for…in主要获取对象的key和数组的下标,同时for…in还能够遍历原型链上的可枚举属性。
- for…of主要获取对象的value值。
const obj = {'a' : '111','b':'222'};
for (let key in obj) {
console.log(key); // a b
}
// 没有部署原生的iterator接口的对象不能直接遍历
for (let value of Object.keys(obj)) {
console.log(obj[value]); // 111 222
}