Array---常用屬性和方法總結
1、Array對象構造函數
1 /*Array對象構造函數*/
2
3 /*組合記憶 shift unshift pop push
4 添加和删除
5 shift unshift 從數組開頭開始添加或者删除
6 pop push 從數組末尾添加或者删除
7 */
8
9 //shift:删除原數組第一項,并傳回删除元素的值;如果數組為空則傳回undefined
10 var arr1 = [1,2,3,4,5];
11 var arr2 = [1,2,3,4,5];
12 var result = arr1.shift();
13 console.log(result);//a:[2,3,4,5] b:1
14
15 //unshift:将參數添加到原數組開頭,并傳回數組的長度
16 arr1 = [1,2,3,4,5];
17 result = arr1.unshift(-2,-1);
18 console.log(result);//a:[-2,-1,1,2,3,4,5] b:7
19 //注:在IE6.0下測試傳回值總為undefined,
20 //FF2.0下測試傳回值為7,是以這個方法的傳回值不可靠,需要用傳回值時可用splice代替本方法來使用。
21
22
23 //pop:删除原數組最後一項,并傳回删除元素的值;如果數組為空則傳回undefined
24 arr1= [1,2,3,4,5];
25 result = arr1.pop();
26 console.log(result);//a:[1,2,3,4] b:5
27
28 //push:将參數添加到原數組末尾,并傳回數組的長度
29 arr1 = [1,2,3,4,5];
30 result = arr1.push(6,7);
31 console.log(result);//a:[1,2,3,4,5,6,7] b:7
2、數組合并---concat
1 /*數組合并concat*/
2
3 //concat:傳回一個新數組,是将參數添加到原數組中構成的
4 arr1 = [1,2,3,4,5];
5 result = arr1.concat(6,7);
6 console.log(result);//a:[1,2,3,4,5] b:[1,2,3,4,5,6,7]
3、數組排序---排序 sort 從小到大, reverse 從大到小
1 /*排序 sort 從小到大 reverse 從大到小*/
2 // sort(orderfunction):按指定的參數對數組進行排序
3 arr1 = [1,2,3,4,5];
4 result = arr1.sort();
5 console.log(result);//[1,2,3,4,5]
6
7 // reverse:将數組反序
8 arr1 = [1,2,3,4,5,8,34];
9 result = arr1.reverse();
10 console.log(result);//[34,8,5,4,3,2,1]
4、數組截取---slice(start,end)
1 // slice(start,end):傳回從原數組中指定開始下标到結束下标之間的項組成的新數組,但不包括結束位置的項
2 arr1 = [1,2,3,4,5];
3 result = arr1.slice(2,5); //[3,4,5]
4 result = arr1.slice(2); //[3,4,5] 在隻有一個參數的情況下,slice()方法傳回從該參數指定位置開始到目前數組末尾的所有項;
5
6 //傳回自身
7 result = arr1.slice(0); //傳回自身
5、數組拼接成字元串---join(separator)
1 /*join(separator) 數組拼接成字元串*/
2 //将數組的元素組起一個字元串,以separator為分隔符,省略的話則用預設用逗号為分隔符
3 arr1 = [1,2,3,4,5];
4 result = arr1.join("|"); //a:[1,2,3,4,5] b:"1|2|3|4|5"
6、splice
1 /*splice*/
2 //splice(start,deleteCount,val1,val2,...):
3 // 從start位置開始删除deleteCount項,并從該位置起插入val1,val2,...
4 arr1 = [1,2,3,4,5];
5 result = arr1.splice(2,2,7,8,9); //a:[1,2,7,8,9,5] b:[3,4]
6 result = arr1.splice(0,1); //同shift
7
8 arr1.splice(0,0,-2,-1);
9 result = arr1.length; //同unshift
10
11 result = arr1.splice(arr1.length-1,1); //同pop
12 arr1.splice(arr1.length,0,6,7);
13 result = arr1.length; //同push
7、去除數組中的重複項
1 <script>
2 /*--數組擴充方法--*/
3 /*
4 *去除數組中的重複項
5 */
6 Array.prototype.unique = function() {
7 var a = []; var l = this.length;
8 for (var i = 0; i < l; i++)
9 {
10 for (var j = i + 1; j < l; j++)
11 {
12 if (this[i] === this[j]) j = ++i;
13 }
14 a.push(this[i]);
15 }
16 return a;
17 };
18
19 var arr = [1,2,3,4,5,6,6,7,7,77,7,]
20 console.log(arr.unique());//Array(8)
21
22 </script>