Chapter 3-1 集合操作
- forEach : 對集合中的元素進行異步操作
- map:對集合中的每個元素進行異步操作得到一個新的值
- filter:對集合中的元素進行異步篩選,得到符合條件的集合
- reduce:與集合中的元素進行異步操作,然後返回最終的結果
- sort :對集合中的元素進行異步操作,然後再根據值從大到小排序
- some/any:集合中的元素是否有至少有一個元素滿足條件
- every/all:集合中的元素是否所有元素滿足條件
1. forEach
語法:
forEach(array,function(err,callback))
對同一個集合中的元素進行異步操作
var arr = [
{'name':'grayng'},
{'name':'xingobar'},
{'name':'element'}
];
arr.forEach(function(element,index){
console.log('第 %d 個元素的值 %s',index,JSON.stringify(element));
});
執行結果:
2. map
語法:
map(callback);
對一個陣列的每個元素開根號
var arr = [9,16];
var results = arr.map(Math.sqrt);
console.log(results);
執行結果
3. filter
語法:
filter(callback)
回傳一個陣列元素中大於6的元素
var arr = [1,2,3,4,5,6,7,8,9];
var results = arr.filter(function(element){
return (element > 6);
});
console.log(results);
執行結果
4. reduce
語法:
reduce(callback);
回傳一個陣列元素總和
var sum = [0, 1, 2, 3].reduce(function (a, b) {
return a + b;
}, 0);
執行結果:
5. sort
語法:
sort(compareFunction);
回傳一個由大到小排序的陣列
var arr = [1,2,3,4,5];
var results = arr.sort(function(element){
return element ;
});
console.log(results);
執行結果:
6. some
語法:
sort(callbackFunction);
查看陣列中是否存在至少一個大於10的元素
var arr = [1,2,3,4,12];
var results = arr.some(function(element){
return (element > 10);
});
console.log(results);
執行結果
7. every
語法:
every(callbackFunction);
查案陣列中每個元素是否都大於10
var arr = [1,2,3,4,12];
var results = arr.every(function(element){
return (element > 10);
});
console.log(results);
執行結果: