数组forEach()
let arr = [1,3,2,4];
以前访问:
for(let i=0,length=arr.length;i<length; i++){
//操作a[i]
}
现在访问:
一个参数 每一项
arr.forEach(function(item){
console.log('item:'+ item+');
});
// 1,3,2,4
两个参数 第一个(每一项),第二个(索引)
arr.forEach(function(item,index){
console.log('item:'+ item+',index:'+index);
});
// item:1,index:0
// item:3,index:1
// item:2,index:2
// item:4,index:3
三个参数, 前两个和前面一样,第三个是当前数组
arr.forEach(function(item,index,arr){
console.log('item:'+ item+',index:'+index+',arr:'+arr);
});
// item:1,index:0,arr:[1,3,2,4]
// item:3,index:1,arr:[1,3,2,4]
// item:2,index:2,arr:[1,3,2,4]
// item:4,index:3,arr:[1,3,2,4]
forEach中级
let array = [1,,2,3];
array.forEach(function(er){
console.log(er); //1,2,3
});
结果只会输出1,2,3空字符自动忽略,循环式自动跳过,如果用之前访问数组的方法则需要进行多余的判断,如下
if(array[i] =="") continue;
jquery 数组循环 $.each(array, function(a,b){})
array
: 循环数组
a
: 索引
b
: value
$.each(arr,function(index,item,arr){
console.log('index:'+ index+',item:'+item)
})
// index:0,item:1
// index:1,item:3
// index:2,item:2
// index:3,item:4
$.each()
不能排除空的情况