運算元組之常用方法:map()、filter()、some()、every()、 forEach()
阿新 • • 發佈:2019-01-10
如標題所說這幾個方法是運算元組最常用的幾個方法。它們有怎樣的區別呢?
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