數(shù)組的創(chuàng)建方式有兩種:
1、var arr=new Array();
2、var arr=Array();
length:
如果預(yù)先知道數(shù)組的項(xiàng)目數(shù)量,也可以給構(gòu)造函數(shù)傳遞該數(shù)量,而該數(shù)量會(huì)自動(dòng)成為length屬性的值。
例:
var colors = new Array(20);
這里的“20”代表的是數(shù)組的長(zhǎng)度;
也可以向Array構(gòu)造函數(shù)傳遞數(shù)組中應(yīng)該包含的項(xiàng)。
例:
var colors = new Array("red","blue","green");
console.log(colors.length);
我們可以運(yùn)用數(shù)組的一些方法,比如:
判斷是不是一個(gè)數(shù)組:Array.isArray()和instanceof;
轉(zhuǎn)化為字符串:Tostring()/toLocalestring()/join();
返回的還是數(shù)組:valueOf():它的返回值還是數(shù)組;
棧方法: push pop(先進(jìn)先出)
push:將接收到的數(shù)據(jù)放到數(shù)組的末尾;返回改變之后的數(shù)組的長(zhǎng)度
pop:將數(shù)組的末尾移除最后一項(xiàng);返回移除的數(shù)據(jù);
隊(duì)列方法:shift unshift;(先進(jìn)后出)
shift:在數(shù)組的前端加入數(shù)據(jù);
unshift:從數(shù)組的前端移除數(shù)據(jù);
反轉(zhuǎn)方法:
reverse():將數(shù)組中的數(shù)據(jù)反轉(zhuǎn)過(guò)來(lái);
排序方法:sort():將數(shù)組中的數(shù)據(jù)從大到小或者從小到大排列;
例:
arr.sort(function(x,y){
return x-y; 升序;
return y-x; 降序;
})
方法:
concat:將數(shù)組的數(shù)據(jù)連接起來(lái)變成一個(gè)數(shù)組;
例:
arr.concat(brr)
slice:可以獲取數(shù)組中的數(shù)據(jù)并創(chuàng)建一個(gè)新的數(shù)組;返回獲取的數(shù)據(jù)
slice(開始,結(jié)束):開始:代表的是從第幾個(gè)元素開始;結(jié)束:代表的是在第幾個(gè)元素的前一個(gè)結(jié)束;
splice():方法用于插入、刪除或替換數(shù)組的元素。
·splice中的刪除功能:返回被刪除數(shù)組元素
var arr = ["red","green","blue"]; //當(dāng)前數(shù)組
var arr1 = arr.splice(0,2); //截取前兩個(gè)元素
console.log(arr1); //返回截取的元素
console.log(arr); //改變?cè)瓟?shù)組
·splice中的插入功能:返回空數(shù)組
var arr = ["red","green","blue"]; //當(dāng)前數(shù)組
var arr1 = arr.splice(1,0,"aqua","black");//沒有截取,但插入了兩條
console.log(arr1); //""
console.log(arr); //改變?cè)瓟?shù)組
·splice中的替換功能:返回被替換數(shù)組元素
var arr = ["red","green","blue"]; //當(dāng)前數(shù)組
var arr1 = arr.splice(1,1,"aqua"); //截取了第2條,替換成"aqua"
console.log(arr1); //輸出截取的"green"
console.log(arr); //輸出數(shù)組
indexOf():通過(guò)元素找到下標(biāo);可以用來(lái)去重