js的迭代方法

ECMAScript 5 爲數組定義了 5 個迭代方法。每個方法都接收兩個參數:要在每一項上運行的函數和(可選的)運行該函數的作用域對象——影響 this 的值。

傳入這些方法中的函數會接收三個參數:數組項的值該項在數組中的位置數組對象本身

以下是這 5 個迭代方法的作用:
every():對數組中的每一項運行給定函數,如果該函數對每一項都返回 true,則返回 true。
filter():對數組中的每一項運行給定函數,返回該函數會返回 true 的項組成的數組。
forEach():對數組中的每一項運行給定函數。這個方法沒有返回值。
map():對數組中的每一項運行給定函數,返回每次函數調用的結果組成的數組。
some():對數組中的每一項運行給定函數,如果該函數對任一項返回 true,則返回 true。

舉例:

var numbers = [1,2,3,4,5,4,3,2,1];
var everyResult = numbers.every(function(item, index, array){
 return (item > 2);
});
alert(everyResult); //false 只有部分滿足

var someResult = numbers.some(function(item, index, array){
 return (item > 2);
});
alert(someResult); //true  至少一項滿足

var numbers = [1,2,3,4,5,4,3,2,1];
var filterResult = numbers.filter(function(item, index, array){
 return (item > 2);
});
alert(filterResult); //[3,4,5,4,3]  返回都大於2的項組成的集合

var numbers = [1,2,3,4,5,4,3,2,1];
var mapResult = numbers.map(function(item, index, array){
 return item * 2;
});
alert(mapResult); //[2,4,6,8,10,8,6,4,2]  返回都乘以2後組成的集合

var numbers = [1,2,3,4,5,4,3,2,1];
numbers.forEach(function(item, index, array){
 //每一項均執行這裏的操作
}); 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章