首頁 >web前端 >js教程 >JavaScript陣列的學習

JavaScript陣列的學習

高洛峰
高洛峰原創
2016-10-13 10:46:411161瀏覽

1陣列的建立

 var arr1 = new Array();
 var arr2=[1,2,3];

2陣列常用的方法:

push,pop,shift,unshift,splice,slice,sort,reverse

2.1 push方法:在元素尾端插入元素

arr:1,2,3,1,3,4

result:6

 

2.2 pop方法:在元素末端彈出一個元素

var arr=[1,2,3];
var result = arr.push(1,3,4);//返回新数组的长度
console.log("arr:"+arr);
console.log("result:"+result);

結果:

arr:1,2

var arr=[1,2,3];
var result = arr.pop();//返回弹出元素的值
console.log("arr:"+arr);
console.log("result:"+result);

結果:


arr:1,2

var arr=[1,2,3];
var result = arr.shift();//返回弹出元素的值
console.log("arr:"+arr);
console.log("result:"+result);

2.3 shift方法:在元素的首位彈出一個元素

var arr=[1,2,3];
var result = arr.unshift(4,5);//返回新数组的长度
console.log("arr:"+arr);
console.log("result:"+result);

結果:

arr:2,3

result:1


 

2.4 unshift方法: 在元素的首位插入元素結果:arree

:4,5,1,2,3

result:5

 

2.5 splice方法: 對數組截取,然後插入數據,直接操作數組本身

var arr=[1,2,3,4,5];
arr.splice(1,2,3,4);
console.log("arr:"+arr);

結果:

arr:1,3,44444,4445 ,5

分析:

第一個參數:截取開始的位置

第二個參數:截取的個數

第二個參數以後:插入的數據,如果沒有第三個參數,則不插入

 

2.6 slice方法: 對數組截取,但不對數組本身操作

var arr=[1,2,3,4,5];
var result =arr.slice(2,4);
console.log("arr:"+arr);
console.log("result:"+result);

結果:

arr:1,2,3,4,5

result:3,4448參數:截取開始的位置為閉區間

第二個參數:截取結束的位置為開區間

如:[2,4)

 

2.7 concat方法: 對陣列拼接,但不操作數組本身

var arr1 =[1,2,3];
var arr2=[3,4,5];
var result = arr1.concat(arr2);
console.log("arr1:"+arr1);
console.log("arr2:"+arr2);
console.log("result:"+result);

結果:

arr1:1,2,3

arr2:3,4,5

result:1,2,3,3,4,5

 

2.8 join方法:對數組每個元素之元素間插入元素,但不操作數組本身

var arr =[1,2,3];
var result =arr.join("-");
console.log("arr:"+arr);
console.log("result:"+result);

結果:


arr:1,2,3
result:1-2-3

2.9 reverse方法: 把陣列裡的元素的位置倒過來

2.9 reverse方法: 把陣列裡的元素的位置倒過來

arr:3,2,1


 

2.10 sort方法: 將陣列裡元素排序(有缺陷)

var arr =[1,2,3];
var result =arr.reverse();
console.log("arr:"+arr);

結果:

arr:1,10,4比較的過程中這個10是先按第一位比較再按第二位比較,所以排在了1後面,4前面。

2.11 sort方法擴張

var arr =[4,10,1,5];
var result =arr.sort();
console.log("arr:"+arr);

結果:

arr:1,4,5,10

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn