JavaScript 數(shù)組- Array的方法總結(jié)(推薦)
來源:易賢網(wǎng) 閱讀:740 次 日期:2016-07-29 16:04:44
溫馨提示:易賢網(wǎng)小編為您整理了“JavaScript 數(shù)組- Array的方法總結(jié)(推薦)”,方便廣大網(wǎng)友查閱!

JavaScript中的Array類型是經(jīng)常用到的,Array類型也提供了很多方法能實(shí)現(xiàn)我們需求,下面我們來總結(jié)一下

一、創(chuàng)建Array的方法

var colors=new Array();

var colors=new Array(3);//創(chuàng)建一個長度為3的數(shù)組

var colors=new Array("red","blue")//創(chuàng)建一個數(shù)組["red","blue"]

當(dāng)然,上面的new可以省略不寫,如 var colors=Array("red");

2、直接使用數(shù)組字面量

var colors=["red","blue","green"];

二、Array的方法1

var colors=["red","blue","green"];

1、獲取數(shù)組的長度 colors.length;//3

2、訪問數(shù)組第二項(xiàng)colors[1];//blue

3、更改數(shù)據(jù)的第二項(xiàng)colors[1]="black";//["red","black","green"]

4、檢查是否是一個數(shù)組 colors instanceof Array;//true

5、colors.toString();//默認(rèn)會以逗號隔開輸出字符串  red,blue,green

6、colors.join("|");//自定義以“|”隔開輸出字符串 red|blue|green

7、colors.push("brown")//往數(shù)組的尾部添加一項(xiàng)

8、colors.pop()//往數(shù)組的尾部刪除一項(xiàng)

9、colors.shift()//刪除數(shù)組的第一項(xiàng),并取得該值

10、colors.unshift("k1","k2")//往數(shù)組的前面插入這兩項(xiàng);["k1","k2","red","blue","green"];

11、colors.reverse()//翻轉(zhuǎn)數(shù)組的順序

12、colors.sort()或者colors.sort([func]);

13、concat() 返回一個新數(shù)組,不影響原數(shù)組 colors.concat()或者colors.concat("k1");

14、slice(begin,end)從數(shù)組下標(biāo)begin開始到end復(fù)制這個數(shù)據(jù),不包括下標(biāo)end,如果是slice(begin)那么就是從下標(biāo)begin開始到數(shù)組的尾部

15、splice

splice(0,2)//從下標(biāo)0開始刪除數(shù)組的兩項(xiàng)

splice(2,0,"k1","k2")從下標(biāo)2開始刪除0項(xiàng),緊接著從這里插入兩項(xiàng)

splice(2,1,"k1")//從下標(biāo)2開始刪除一項(xiàng),緊接著從這里插入一項(xiàng)

16、indexOf("item")//從數(shù)組頭開始查找某項(xiàng),找到后返回下標(biāo)值,找不到返回-1

17、lastIndexOf("item")//從數(shù)組尾開始查找某項(xiàng),找到后返回下標(biāo)值,找不到返回-1

三、Array方法2:迭代方法(ECMAScript5)

1、every():對數(shù)組的每一項(xiàng)運(yùn)行給定的函數(shù),每一項(xiàng)都返回true,則返回true(不影響原數(shù)組)

var numbers=[1,2,3,2,1];

//判斷是否每個數(shù)字都大于2

var flag=numbers.every(function (item,index,array) {

  return item>2;

});

2、filter():對數(shù)組中每一項(xiàng)運(yùn)行給定的函數(shù),返回該函數(shù)為true的項(xiàng)(不影響原數(shù)組)

var numbers=[1,2,3,2,1];

//返回大于2的項(xiàng)

var array=numbers.filter(function (item,index,array) {

  return item>2;

});

3、forEach():對數(shù)組中的每一項(xiàng)執(zhí)行給定的函數(shù),不返回值 (不影響原數(shù)組)

var numbers=[1,2,3,2,1];

//輸出每一項(xiàng)的平方

numbers.forEach(function (item,index,array) {

  console.log(item*2);

});

4、map():對數(shù)組的每一項(xiàng)執(zhí)行給定的函數(shù),返回每次函數(shù)調(diào)用后結(jié)果組成的數(shù)組(不影響原數(shù)組)

var numbers=[1,2,3,2,1];

//返回每一項(xiàng)的平方

var array=numbers.map(function (item,index,array) {

  return item*item;

});

5、some():對數(shù)組的每一項(xiàng)執(zhí)行給定的函數(shù),如果有一項(xiàng)返回true則,則返回true

var numbers=[1,2,3,2,1];

var flag=numbers.some(function (item,index,array) {

  return item>2

});

三、Array方法3:歸并方法(ECMAScript5)

1、reduce()方法從數(shù)組的第一行開始,逐個遍歷到最后

2、reduceRight()方法從數(shù)組的最后一項(xiàng)開始,逐個向前遍歷

var numbers=[1,2,3,4,5];

var result=numbers.reduce(function (prev,cur,index,array) {

  //prev:前一個運(yùn)算的結(jié)果,剛開始時候?yàn)閿?shù)字的第一項(xiàng)

  //cur:數(shù)組的當(dāng)前項(xiàng)

  //index:當(dāng)前數(shù)組的下標(biāo)

  //array:執(zhí)行這個運(yùn)算的數(shù)組,當(dāng)前為numbers

  console.log("prev:"+prev);

  console.log("cur:"+cur);

  console.log("index:"+index);

  console.log("array:"+array);

  console.log("=============");

  return prev+cur;

});

以上這篇JavaScript 數(shù)組- Array的方法總結(jié)(推薦)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考

更多信息請查看網(wǎng)絡(luò)編程
易賢網(wǎng)手機(jī)網(wǎng)站地址:JavaScript 數(shù)組- Array的方法總結(jié)(推薦)
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機(jī)號
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報警專用圖標(biāo)