- 1.join() 將數(shù)組中的所有元素轉(zhuǎn)化為字符串并連接在一起
var a=[1,2,3,4];
a.join(); //"1,2,3,4"
- 2.reverser() 將數(shù)組中的元素顛倒順序坐儿,返回逆序的數(shù)組。
var a[1,2,3,4];
a.reverse(); //[4,3,2,1]
- 3.sort() 將數(shù)組中的元素排序并返回排序后的數(shù)組。
當(dāng)不帶參數(shù)調(diào)用sort()時(shí)椅亚,數(shù)組元素以字母表順序排序葡秒。
var a=['ant','Bug','cat','Dog'];
a.sort(); //["Bug", "Dog", "ant", "cat"]
a.sort(function(s,t){
var s1=s.toLowerCase();
var t1=t.toLowerCase();
if(s1<t1) return -1;
if(s1>t1) return 1;
return 0
});//["ant", "BUg", "cat", "Dog"]
- 4.concat() 創(chuàng)建并返回一個(gè)新數(shù)組,它的元素包括調(diào)用concat()的原始數(shù)組的元素和concat()的每個(gè)參數(shù)砂碉。如果這些參數(shù)中的任何一個(gè)自身是數(shù)組,則連接的是數(shù)組元素刻两,而非數(shù)組本身增蹭。
var a=[1,2,3];
a.concat(4,5);// [1, 2, 3, 4, 5]
a.concat([4,5]);// [1, 2, 3, 4, 5]
a.concat([4,5],[6,7]);// [1, 2, 3, 4, 5, 6, 7]
a.concat([4,5],[6,[8,7]]);// [1, 2, 3, 4, 5, 6,[8,7]]
- 5.slice() 返回指定數(shù)組的一個(gè)片段或子數(shù)組。它的兩個(gè)參數(shù)分別指定了片段的開始和結(jié)束的位置磅摹。返回的數(shù)組包含第一個(gè)參數(shù)指定的位置和所有到但不含第二個(gè)參數(shù)指定的位置之間的所有數(shù)據(jù)元素滋迈。
如果只指定一個(gè)參數(shù),返回的數(shù)組包含從開始位置到數(shù)組結(jié)尾的所有元素户誓。
如果參數(shù)中出現(xiàn)負(fù)數(shù)饼灿,它表示相對于數(shù)組中最后一個(gè)元素的位置。例如:參數(shù)-1指定了最后一個(gè)元素帝美,而-3指定了倒數(shù)第三個(gè)元素碍彭。
注意,slice()不會修改調(diào)用的數(shù)組。
var a=[1,2,3,4,5];
a.slice(0,2);//[1, 2]
a.slice(3);//[4, 5]
a.slice(1,-1);//[2, 3, 4]
a.slice(-3,-2);//[3]
- 6.splice() 在數(shù)組中插入或刪除元素的通用方法庇忌。不同于slice()和concat(),splice()會修改調(diào)用的數(shù)組舞箍。注意:splice()和slice()擁有非常相似的名字,但它們的功能卻又本質(zhì)的區(qū)別皆疹。
splice()能夠從數(shù)組中刪除元素创译,插入元素到數(shù)組中或者同事完成這兩種操作。在插入或刪除點(diǎn)之后的數(shù)組元素會根據(jù)需要增加或減小它們的索引值墙基,因此數(shù)組的其他部分仍然保持連續(xù)软族。splice()的第一個(gè)參數(shù)指定了插入和(或)刪除的起始位置。第二個(gè)參數(shù)指定了應(yīng)該從數(shù)組中刪除的元素的個(gè)數(shù)残制,如果省略第二個(gè)參數(shù)立砸,從起始點(diǎn)開始到數(shù)組結(jié)尾的所有元素都將被刪除。splice()返回一個(gè)由刪除元素組成的數(shù)組初茶,或者如果沒有刪除元素就返回一個(gè)空數(shù)組颗祝。
var a=[1,2,3,4,5,6,7,8];
a.splice(4);//返回[[5, 6, 7, 8]],a是[1, 2, 3, 4]
a.splice(1,2)//返回[2, 3],a是[1, 4, 5, 6, 7, 8]
a.splice(1,1);//返回[2],a是 [1, 3, 4, 5, 6, 7, 8]
7.push()和pop()
push()向數(shù)組尾部添加一個(gè)或多個(gè)元素恼布。
pop()刪除數(shù)組的最后一個(gè)元素螺戳。8.unshift()和shift()
unshift()向數(shù)組頭部添加一個(gè)或多個(gè)元素。
shift()刪除數(shù)組的第一個(gè)元素折汞。9.toString()和toLocaleString()
[1,2,3].toString();//"1,2,3"
[1,[2,'c']].toString();//"1,2,c"
toLocaleString()是toString()方法的本地化版本倔幼。它調(diào)用元素的toLocaleString()方法將每個(gè)數(shù)組元素轉(zhuǎn)換為字符串,并使用本地化分隔符將這些字符串連接起來生成最終的字符串爽待。
- 10.forEach()從頭至尾遍歷數(shù)組损同,為每個(gè)元素調(diào)用指定的函數(shù)。
傳遞的函數(shù)做為forEach()的第一個(gè)參數(shù)鸟款,然后forEach()使用三個(gè)參數(shù)調(diào)用該函數(shù):數(shù)組元素膏燃,元素的索引和數(shù)組的本身。
var data=[1,2,3,4,5];
//計(jì)算數(shù)組元素的和值
var sum=0;
data.forEach(function(value){
sum+=value
});
sum //15
//每個(gè)數(shù)組元素的值加1
data.forEach(function(value,index,arr){
arr[index]=value+1;
});
data //[2, 3, 4, 5, 6]
- 11.map()將調(diào)用的數(shù)組的每個(gè)元素傳遞給指定的函數(shù)何什,并返回一個(gè)數(shù)組组哩,它包含函數(shù)的返回值。
注意:傳遞給mao()的函數(shù)應(yīng)該有返回值处渣。map()返回的是新數(shù)組伶贰,不修改原來的數(shù)組。如果原來的數(shù)組是稀疏數(shù)組霍比,返回的也是相同方式的稀疏數(shù)組幕袱,它們具有相同的長度暴备,相同的缺失元素悠瞬。
var a=[1,2,3];
var b=a.map(function(value){
return value*value;
});
b// [1, 4, 9]
- 12 filter()返回符合條件的數(shù)組元素
var a=[1,2,3,5];
var b=a.filter(function(value){
return value>2;
});
b // [3, 5]
- 13.every()和some()
數(shù)組的邏輯判定,它們對數(shù)組元素應(yīng)用指定的函數(shù)進(jìn)行判定,返回true或false浅妆。
every()即數(shù)組中所有元素都符合篩選條件望迎,則返回true.
some()即數(shù)組中存在元素符合篩選條件,則返回true;
var a =[1,2,3,4,5];
a.every(function(value){
return value<10;
}) //true a中所有元素都小于10
a.every(function(value){
return value%2===0;
});//false a中不是所有元素都是偶數(shù)
a.some(function(value){
return value%2===0;
})//true a中存在偶數(shù)
- reduce()和reduceRight()
使用指定的函數(shù)將數(shù)組元素進(jìn)行組合凌外,生成單個(gè)值辩尊。
reduce()需要兩個(gè)參數(shù)。
第一個(gè)是執(zhí)行化簡操作的函數(shù)康辑∩阌化簡函數(shù)的任務(wù)就是用某種方法把兩個(gè)值組合或化簡為一個(gè)值,并返回化簡后的值疮薇。第二個(gè)(可選)參數(shù)是一個(gè)傳遞給函數(shù)的初始值胸墙。
reduceRight()和reduce()使用方法一致,不同的是它按照數(shù)組索引從高到低(從右向左)處理數(shù)組按咒。
- reduce()和reduceRight()
var a=[1,2,3,4,5];
var sum=a.reduce(function(x,y){return x+y;},0);
sum //15 數(shù)組求和
var max=a.reduce(function(x,y){return x>y?x:y});
max // 5求最大值
- indexOf()和lastIndexOf()
indexOf()第一個(gè)符合條件的值的索引迟隅,如果沒有,返回-1
lastIndexOf()最后一個(gè)符合條件的值的索引,如果沒有,返回-1
- indexOf()和lastIndexOf()