遍历数组
1. for语句
var arr = [1,2,0,3,9];
for ( var i = 0; i <arr.length; i++){
console.log(arr[i]);
}
// 将长度缓存起来,避免重复获取长度,数组很大时优化效果明显
for(var j = 0,len = arr.length; j < len; j++){
console.log(arr[j]);
}
2. forEach数组方法 (ES5) [推荐]
数组对象自带方法。不支持return返回值
。不支持 break .
arr.forEach(function(value,i){
console.log('forEach遍历:'+i+'--'+value);
})
3. map数组方法 (ES5)
支持return返回值
var temp=arr.map(function(val,index){
console.log(val);
return val*val
})
console.log(temp);
4. for-of语句 (ES6)
for( let item of items){
// item是数组元素值。不是索引!
console.log(item);
}
for-of循环不仅支持数组
,还支持大多数类数组对象
,例如DOM NodeList对象。
5. 其他
find --返回一个符合条件
filter -- 返回所有符合的对象
遍历对象
1. for-in语句
for-in为遍历对象而设计,不适用数组。
数组的下标key值是数字,for-in遍历的key值"0","1","2"是字符串。
for (var key in obj){
console.log(obj[key]);
console.log(key);
}
JS数组遍历与对象遍历 https://www.cnblogs.com/sun-web/p/10598949.html