数组的高阶方法
1.forEach 遍历
var arr= [ "沸羊羊" , "双面龟" , "黑小虎" ]
arr. forEach ( function ( item, index, self ) {
console. log ( item, index, self)
} )
2.map 映射
var arr= [ "沸羊羊" , "双面龟" , "黑小虎" ]
var arr1= arr. map ( function ( item, index ) {
return { name : item} ;
} )
3.filter 过滤
var arr= [ 1 , 23 , 4 , 24 , 5 , 7 , 7 , 24 ]
var arr1= arr. filter ( function ( item ) {
return item> 5
} )
console. log ( arr1)
利用filter数组去重
var arr2= arr. filter ( function ( item, index ) {
if ( arr. indexOf ( item) === index) {
return true
} else {
return false
}
} )
console. log ( arr2)
利用set去重
var arr3 = [ ... new Set ( arr) ]
console. log ( arr3)
var s= new Set ( arr)
var arr3= Array. from ( s)
console. log ( arr3)
4.reduce 累计
var arr= [ 1 , 2 , 3 , 4 ]
var re= arr. reduce ( function ( a, b ) {
return a* 10 + b
} )
console. log ( re)
5.some与every的区别
var arr= [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 ]
var re1= arr. every ( function ( item ) {
return item> 5
} )
var re2= arr. some ( function ( item ) {
return item> 5
} )
console. log ( re1, "re1" )
console. log ( re2, "re2" )
6.排序
var arr= [ 12 , 234 , 35 , 546 , 11 , 2 , 11 ]
arr. sort ( function ( a, b ) { return a- b} )
console. log ( arr)
find与findIndex
var arr= [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 ]
var re1= arr. find ( function ( item, index ) {
return item> 5
} )
console. log ( re1)
var re2= arr. findIndex ( function ( item, index ) {
return item> 5
} )
console. log ( re2)