for in 和 for of 的区别
最近突然发现虽然整天做项目,但是基础的东西忘得越来越多了,所以我准备没事就回顾回顾基础知识,今天来回顾一下for in 和for of的区别
首先来看for in
for in 可以用来遍历数组,但是会有以下几个问题
1.index索引为字符串型数字,不能直接进行几何运算
2.遍历顺序有可能不是按照实际数组的内部顺序
3.使用for in会遍历数组所有的可枚举属性,例如下面例子上的原型方法method和name属性都会被遍历出来
Array.prototype.method = function(){ console.log(this.length) } var myArray = [1,2,3,4,5] myArray.name = "数组"
for (var key in myArray) {
console.log(key)
}
运送结果:
如果我们不想要method和name呢,这样的话我们可以使用ES6的for of
特别注意:for in 遍历的是数组的索引(即键名),for of遍历的是value值
语雀链接🔗 https://www.yuque.com/suihangadam
归来卧占楼千尺,梦落沧波明月舟。