javascript高級程序設計-Array迭代及歸併

迭代方法

every()

若是該函數對每一項都返回true,則返回true,不然返回false。javascript

var numbers = [1,2,3,4,3,2,1];
var everyResult = numbers.every(function(item,index,array){
    return (item > 2);
});
alert(everyResult);   //result爲false

some()

若是該函數對任意一項返回true,則返回true。java

var numbers = [1,2,3,4,3,2,1];
var everyResult = numbers.some(function(item,index,array){
    return (item > 2);
});
alert(everyResult);   //result爲true

filter()

該函數返回的是全部爲ture的項組成的數組。數組

var numbers = [1,2,3,4,3,2,1];
var everyResult = numbers.filter(function(item,index,array){
    return (item > 2);
});
alert(everyResult);   //result爲3,4,3

map()

該函數返回函數調用結果組成的數組。函數

var numbers = [1,2,3,4,3,2,1];
var everyResult = numbers.map(function(item,index,array){
    return (item * 2);
});
alert(everyResult);   //result爲2,4,6,8,6,4,2

forEach()

該函數只是用於遍歷,沒有返回值。code

var numbers = [1,2,3,4,3,2,1];
var everyResult = numbers.map(function(item,index,array){
    //執行某些操做
});

歸併方法

reduce()

從數組的第一項開始,迭代數組的全部項,構建一個最終的返回值。ip

var numbers = [1,2,3,4,5];
var sum = numbers.reduce(function(prev,cur,index,array){
    return prev + cur;  //該結果會做爲下一次迭代的prev
})
alert(sum);  //rusult爲15

reduceRight()

從數組的最後一項開始,迭代數組的全部項,構建一個最終的返回值。it

var numbers = [1,2,3,4,5];
var sum = numbers.reduceRight(function(prev,cur,index,array){
    return prev + cur;  //該結果會做爲下一次迭代的prev
})
alert(sum);  //rusult爲15
相關文章
相關標籤/搜索