一. 数组
1.for
let arr=['apple','banana','orange','tomato']
for(let i=0;i<arr.lrngth;i++){
console.log(arr[i})
}
//apple banner orange tomato
2.forEach
arr.forEach(function(val,index,arr){
console.log(val,index,arr)
})
3.arr.map
注:非常有用,做数据交互'映射';
正常情况下,需要配合return,返回是一个新的数组
若是没有return,相当于forEach
注意:平时只要用map,一定是要有return
let arr2=[ {title:'aaaaa',read:100,hot:true}, {title:'bbbbb',read:100,hot:true}, {title:'ccccc',read:100,hot:true}, {title:'ddddd',read:100,hot:true} ] let newArr = arr2.map((val,index,arr2)=>{ console.log(val,index,arr2)
return true;
})
console.log(newArr)
4.arr.filter 过滤器
注:过滤,过滤一些不合格‘元素’,如果回调函数返回true,就留下来
本人观点:留一些相同的元素
let arr=[
{title:'aaaaa',read:100,hot:true}, {title:'bbbbb',read:100,hot:false}, {title:'ccccc',read:100,hot:true}, {title:'ddddd',read:100,hot:false}
]
let newArr=arr.filter((val,index,arr)=>{
return val.hot==true;
})
conlose.log(newArr)
5.arr.some(); 类似查找,数组里面某一个元素符合条件,返回true,
let arr=['apple','banana','arr'] let b=arr.some((val,index,arr)=>{
return val=='banana'
})
console.log(b)
6.arr.every();
let arr=[1,3,5,7,9];
let b=arr.every((val,index,arr)=>{
return val%2==1;
})
console.log(b)
7.arr.reduce()//从左往右
arr.reduceRight()//从右往左
let arr=[1,2,3,4,5,6,7,8,9]
let res=arr.reduce((prev,cur,index,arr2)=>{
return math.pow(prev,cur) //prev.cur的幂
return prev+cur;//prev.cur(第一位和第二位的和)
})
console.log(res)
8.arr...of
arr.keys() 数组的下标
arr.entries 数组的某一项
let arr=['apple','banner','orange','tomato']
for(let val of arr){
console.log(val)
}
for(let index of arr.keys()){
console.log(index)
}
for(let item of arr.entries()){
console.log(item)
}
for(let [key,val] of arr.entries()){
console.log(key,val)
}









网友评论