1. 程式人生 > >運算元組之常用方法:map()、filter()、some()、every()、 forEach()

運算元組之常用方法:map()、filter()、some()、every()、 forEach()

如標題所說這幾個方法是運算元組最常用的幾個方法。它們有怎樣的區別呢?

map(callback)返回一個新的陣列。為每個元素執行callback方法

let arr = [1,2,3,4];
let newArr = arr.map((item,index)=>{return item*2}); //callback要有return
console.log(newArr);  // [2,4,6,8]

filter(callback)返回符合callback函式的元素陣列

let arr = [1,2,3,4];
let newArr = arr.filter((item,index)=>{return
item>2})
;//callback中要有return console.log(newArr); // [3,4]

some(callback)返回Boolean 判斷陣列中是否有滿足callback函式的元素(一旦有符合的元素立即返回true,所以可能不會遍歷每一個元素

let arr = [1,2,3,4];
let res = arr.some((item,index)=>{
    console.log(item);    //  1,2,3
    return  item>2
})
console.log(res);  //true

every(callback)返回Boolean 判斷陣列中每一個元素是否滿足callback函式(只有所有的元素都滿足時才返回true,只要有不滿足的元素就立即終止遍歷並返回false

let arr = [1,2,3,4]
let res = arr.every((item,index)=>{
    console.log(item);  // 1
    return item>2
});  
console.log(res)  //false

forEach(callback)沒有返回值 為每個元素執行callback(不支援break、continue跳出迴圈

let arr = [1,2,3,4]
let res = arr.forEach((item,index)=>{
    return item*2
    // item*2 && break
; 報錯 })
console.log(res); //undefined