闲来无事,把最近遇见的遍历和之前所用到的遍历方法之间的区别和用法总结一下。
- for
优点:数组最早的遍历方式,兼容性好
for(var i = 0; i<array.length; i++){
console.log(array[i]);
}
- for...in
应用场景:for–in是用来循环带有字符串key的对象的方法。
实际是为循环”enumerable“(可枚举)对象而设计的
缺点:不推荐遍历数组对象
for(var key in object){
console.log(key);
}
- forEach
优点:es6内置方法
短处:你不能中断循环(使用break语句或使用return语句)
array.forEach(function(item,index){
console.log(item);
})
- for...of
es7语法
可循环:Array、String、TypedArray(类型化数组)、 Set、Map、DOM Collection、生成器(generators)
缺点:不能直接用于普通对象的循环,可以按对象拥有的属性循环,使用内置的 Object.keys()
for (var value of array) {
console.log(value);
}