对象的遍历方法
for in 和 for of 以及Object.keys
1:for in 遍历数组的任意属性(symbol类型除外)
for (variable in object){
statements
}
variable
每次被迭代时,variable被赋予不同的属性值
object
非symbol类型的可枚举可迭代的对象
for in 不应使用在数组中
如果只考虑在对象本身的属性,而不是它的原型,getOwnPropertyNames()或者执行hasOwnproperty()来确定是否含有本身的对象属性,也能使用(propertyIsEnumerable);或者,如果你知道不会有任何外部代码干扰,您可以使用检查方法扩展内置原型。(参考mdn)
2.for of 在可迭代对象(包括 Array,Map,Set,String,TypedArray,arguments 对象等等)上创建一个迭代循环,调用自定义迭代钩子,并为每个不同属性的值执行语句;
let iterable = new Map([["a", 1], ["b", 2], ["c", 3]]);
for (let entry of iter