1.join
作用: 將陣列通過指定字元拼接成字串。
語法: string arr.join([separator = `,`]);
引數: separator可選,如果省略的話,預設為一個逗號。如果 seprator 是一個空字串,那麼陣列中的所有元素將被直接連線。
返回值: 拼接後的字串。
<script>
var arr=[2,3,4,5];
console.log(arr.join());//"2,3,4,5"
console.log(arr.join(""));//"2345"
console.log(arr.join("+"));//"2+3+4+5"
console.log(arr);//[2,3,4,5]
</script>
2.push
作用:往陣列的末尾新增一個或者多個元素。
語法:number arr.push(element1, …, elementN);
引數:elementN,一個或多個元素。
返回值:新陣列的length。
注意:會修改原陣列。
<script>
var att=[1,2,3,4];
console.log(att.push("a","b"));//6
console.log(att);//[1,2,3,4,"a","b"];
</script>
3.unshift
作用:往陣列的頭部新增一個或者多個元素。
語法:number arr.push(element1, …, elementN);
引數:elementN,一個或多個元素。
返回值:新陣列的length。
注意:會修改原陣列。
<script>
var att=[1,2,3,4];
console.log(att.unshift("a","b"));//6
console.log(att);//["a","b",1,2,3,4];
</script>
4.pop
作用: 刪除陣列最後 一個 元素。
語法: mixed arr.pop();
返回值: 被刪除的那一個元素。
注意:會修改原陣列。
<script>
var arr=[1,2,3,4];
console.log(arr.pop());//4
console.log(arr);//[1,2,3]
</script>
5.shift
作用: 刪除陣列 第一個 元素。
語法: mixed arr.pop();
返回值: 被刪除的那一個元素。
注意:會修改原陣列。
<script>
var arr=[1,2,3,4];
console.log(arr.shift());//1
console.log(arr);//[2,3,4]
</script>
6.concat
作用: 將傳入的陣列或非陣列值與原陣列合並,組成一個新的陣列並返回.
語法: array array.concat(value1, value2, …, valueN);
引數: valueN是指需要與原陣列合並的陣列或非陣列值.
返回值: 合併後的陣列
注意: 不會修改原陣列的內容。
<script>
var att=[1,2,3];
var attO=["a","b"];
var attT=[5,true];
console.log(att.concat(10,attO,attT));//[1,2,3,10,"a","b",5,tru]
console.log(att);//[1,2,3]
</script>
7.reverse
作用:顛倒陣列中元素的位置.
語法: array arr.reverse()
返回值: 顛倒順序後的陣列
注意: 會改變原陣列.
<script>
var arr = [1,2,3,6,5,4];
var res = arr.reverse();
res.push( "a" );
console.log( res );//[4,5,6,3,2,1,"a"]
console.log( arr );//[4,5,6,3,2,1,"a"]
</script>
8.slice
作用:擷取**陣列中一部分,並返回這個新的陣列.
語法: array arr.slice([begin[,end]]);
返回值: 擷取後的新的陣列
注意: 包含起始位置,不包含結束位置,不會改變原陣列.
什麼都不傳入,則是原陣列。
<script>
var arr = ["a","b","c","d"];
// var res = arr.slice( 1,3 );//["b","c"]
// var res = arr.slice( 3,1 );//[]
var res = arr.slice( -3,-1 );//["b","c"]
var res = arr.slice();//["a","b","c","d"]
console.log( res );
console.log( arr );//["a","b","c","d"]
</script>
9.splice
作用:用新元素替換舊元素,以此修改陣列的內容
語法:array array.splice(start, deleteCount[, item1[, item2[, …]]])
引數:
- start 起始位置
- deleteCount 刪除長度
- item 新增的內容
返回值: 由被刪除的元素組成的一個陣列
注意:修改了原陣列的內容。
<script>
var att="Liangzhifang".split("");
console.log(att.splice(2,4,["a"]));//["a","n","g","z"]
console.log(att);//["L","i",["a"],"h","i","f","a","n","g"]
</script>
10.sort
作用: 對陣列的元素進行排序。
語法: array arr.sort([compareFunction]);
引數: compareFunction可選。用來指定按某種順序進行排列的函式。如果省略,元素按照轉換為的字串的諸個字元的Unicode位點進行排序。
返回值: 排序後的陣列.
<script>
//當什麼都不傳入的時候,sort()預設由小到大排列。
var attr=[9,5,4,3,2];
console.log(attr.sort());//[2, 3, 4, 5, 9]
//傳入function的時候,sort()內的function返回值大於0,由小到大排列。
var attrO=[9,5,4,3,2];
console.log(attrO.sort(function () {
return 1;
}));//[2, 3, 4, 5, 9]
//傳入function的時候,sort()內的function返回值小於或者等於0,陣列序列不變。
var attrT=[9,5,4,3,2];
console.log(attrT.sort(function () {
return -1;
}));// [9, 5, 4, 3, 2]
//由於sort內部是隨機抽取兩個值,我們在利用function函式的返回值,大於0的時候,交換位置。小於或者等於0的時候不變,來排序。
//以下是由小到大排序
var attrTh=[9,5,4,3,2];
console.log(attrTh.sort(function (a,b) {
return a-b;
}));// [2, 3, 4, 5, 9]
//以下是由大到小排序
var attrF=[9,5,4,3,2];
console.log(attrF.sort(function (a,b) {
return b-a;// [9, 5, 4, 3, 2]
}));
</script>