map 是遍歷數(shù)組,并返回一個(gè)新數(shù)組.
oldArray = [1,2,3,4,5,6];
newArray = oldArray.map(function(val,index){
return val + 3;
});
newArray : 4,5,6,7,8,9
reduce 是遍歷數(shù)組,把所有元素組合到一起:
oldArray = [1,2,3,4,5,6];
sum = oldArray.reduce(function(preVal,curVal){
return preVal + curVal;
});
sum : 21
filter 是遍歷數(shù)組,根據(jù)條件篩選 得出一個(gè)新數(shù)組
oldArray = [1,2,3,4,5,6];
newArray = oldArray.filter(function(val){
return val < 4;
});
newArray : 1,2,3
與我們之前用的數(shù)組方法僅僅返回一個(gè)新數(shù)組不同, sort 方法將改變原數(shù)組,返回被排序后的數(shù)組邮辽。
默認(rèn) :按字母順序或數(shù)字順序?qū)?shù)組中的元素進(jìn)行排序。
sort 可以把比較函數(shù)作為參數(shù)傳入贸营。比較函數(shù)有返回值吨述,當(dāng) a 小于 b,返回一個(gè)負(fù)數(shù)钞脂;當(dāng) a 大于 b 揣云,返回一個(gè)正數(shù);相等時(shí)返回0冰啃。
如果沒有傳入比較函數(shù)邓夕,它將把值全部轉(zhuǎn)成字符串刘莹,并按照字母順序進(jìn)行排序。
下面的例子將展示 sort 的使用焚刚,傳入的比較函數(shù)把元素按照從小到大的順序進(jìn)行排列:
var array = [1, 12, 21, 2];
array.sort(function(a, b) {
return a - b;
});
reverse 對(duì)數(shù)組進(jìn)行反轉(zhuǎn)点弯,對(duì)元素組操作,返回反轉(zhuǎn)后的數(shù)組矿咕。
var array = [1, 2,3,4,5];
var newArray = [];
newArray = array.reverse();
array : 5,4,3,2,1
newArray: 5,4,3,2,1
concat 方法可以用來把兩個(gè)數(shù)組的內(nèi)容合并到一個(gè)數(shù)組中抢肛。
concat 方法的參數(shù)應(yīng)該是一個(gè)數(shù)組。參數(shù)中的數(shù)組會(huì)拼接在原數(shù)組的后面碳柱,并作為一個(gè)新數(shù)組返回捡絮。
下面是一個(gè)拼接數(shù)組的例子,用concat 把 otherArray 拼接在 oldArray 的后面:
newArray = oldArray.concat(otherArray);