for...in 循环只遍历可枚举属性(包括它的原型链上的可枚举属性)。像 Array 和 Object 使用内置构造函数所创建的对象都会继承自 Object.prototype 和 String.prototype 的不可枚举属性,例如 String 的 indexOf() 方法或 Object 的 toString() 方法。循环将遍历对象本身的所有可枚举属性,以及对象从其构造函数原型中继承的属性(更接近原型链中对象的属性覆盖原型属性)。
Q: ES6 的 for of 可以遍历对象吗?
A: ES6 的 “for of” 不能遍历对象。
原因:ES6 中引入了 Iterator 接口,只有提供了 Iterator 接口的数据类型才可以使用 “for-of” 来循环遍历;而普通对象默认没有提供 Iterator 接口,因此无法用 “for-of” 来进行遍历。
阅读量:2015
点赞量:0
收藏量:0