陣列中常用的方法有:1、在陣列末端新增內容的push方法;2、刪除陣列最後一項的pop方法;3、刪除陣列第一項的shift方法;4、向陣列首位新增內容unshift方法等等。
【推薦課程:JavaScript教學】
陣列常用的一些方法:
1、push()
為陣列的末端新增內容
參數:要新增的項目。傳遞多個用逗號隔開,任何資料類型都可以
傳回值:新增後數組的長度
是否改變原始數組:改變
let ary1 = [12,34,26]; ary1.push(100); //返回一个新的长度 length=4console.log(ary1)//结果为 [12,34,26,100]
2、pop()
刪除陣列的最後一項
參數:無
傳回值:已刪除的項目
#是否改變原始數組:改變
let ary2 = [108,112,39,10]; ary2.pop();//删除的最后一项为10 console.log(ary2);//[108, 112, 39]
3、shift()
#刪除數組的第一項
參數:無
##返回值:已刪除的項目是否改變原始數組:改變let ary3 = [0,108,112,39]; ary3.shift();//删除的第一项为0 console.log(ary3);//[108, 112, 39]
# 4、unshift()
為陣列首位新增內容參數:要新增的項,多項用','隔開返回值:新數組的長度是否改變原始數組:改變let ary4 = ['c','d']; ary4.unshift('a','b'); console.log(ary4);//["a", "b", "c", "d"]
5、slice()
依照條件找出其中的部分內容參數:array.slice(n, m),從索引n開始查找到m處(不包含m)array.slice(n) 第二個參數省略,則一直查找到結尾array.slice(0)原樣輸出內容,可以實現數組克隆array.slice(-n,-m) slice支援負參數,從最後一項開始算起,-1為最後一項,-2為倒數第二項傳回值:傳回一個新數組是否改變原始數組:不改變let ary5 = [1,2,3,4,5,6,7,8,9]; //console.log(ary5.slice(2,8));//从索引2开始查找到索引为8的内容,结果为[3, 4, 5, 6, 7, 8] //console.log(ary5.slice(0)); console.log(ary5.slice(-2,-1));//[8]
6、splice()
對數組進行增刪改增加:ary.splice(n,0,m)從索引n開始刪除0項,把m或更多的內容插入到索引n的前面回空陣列修改:ary.splice(n,x,m)從索引n開始刪除x個,m替換刪除的部分把原有內容刪除掉,然後用新內容替換掉刪除:ary.splice(n,m) 從索引n開始刪除m個內容(如果第二個參數省略,則從n刪除到結尾)傳回刪除的新數組,原有數組改變//增加 let ary6_z = [33,44,55,66,77,88]; ary6_z.splice(2,0,'a','b') console.log(ary6_z);// [33, 44, "a", "b", 55, 66, 77, 88] //修改 let ary6_x = [33,44,55,66,77,88]; ary6_x.splice(1,2,'x','y') console.log(ary6_x);// [33, "x", "y", 66, 77, 88] //删除 let ary6_s = [33,44,55,66,77,88]; //console.log(ary6.splice(3,2))//[66, 77] console.log(ary6_s.splice(3));//[66, 77, 88]
7、join()
用指定的分隔符號將數組每一項拼接為字串參數:指定的分隔符號(如果省略該參數,則使用逗號作為分隔符號)#傳回值:拼接好的字串是否改變原數組:不改變let ary7 = [1,2,3]; console.log(ary7.join('、'));//1、2、3
8、concat()
用於連接兩個或多個陣列參數:參數可以是特定的值,也可以是數組物件。可以是任意多個傳回值:傳回連線後的新陣列是否改變原始數組:不改變let ary8 = ['你']; let ary80 = ary8.concat('好'); console.log(ary80);//["你", "好"]
9、indexOf()
偵測目前值在陣列中第一次出現的位置索引參數:array.indexOf(item,start) item:尋找的元素start:字串中開始檢索的位置傳回值:第一次查到的索引,找不到回傳-1是否改變原始數組:不改變let ary9 = ['a','b','c','d','e','a','f']; console.log(ary9.indexOf('c'));//2 console.log(ary9.indexOf('a',3))//5
10、lastIndexOf()
偵測目前值在陣列中最後一次出現的位置索引參數:array.lastIndexOf(item,start) item:尋找的元素start:字串中開始檢索的位置傳回值:第一次查到的索引,未找到返回-1是否改變原始數組:不改變let ary10 = ['a','b','c','d','e','a','f']; console.log(ary10.lastIndexOf('c'));//2 console.log(ary10.lastIndexOf('f',1))//-1
#11、includes( )
判斷一個陣列是否包含一個指定的值參數:指定的內容傳回值:布林值是否改變原陣列:不要改變let ary13 = ['a','b','c','d']; console.log(ary13.includes('c'));//true console.log(ary13.includes(2));//false
12、sort()
對陣列的元素進行排序(預設是從小到大來排序並且是根據字串來排序的)參數:可選(函數) 規定排序規則預設排序順序為按字母升序#傳回值:排序後新陣列是否改變原數組:改變sort在不傳遞參數情況下,只能處理10以內(個位數)數字排序let ary11 = [32,44,23,54,90,12,9]; ary11.sort(function(a,b){ // return a-b; // 结果[9, 12, 23, 32, 44, 54, 90] // return b-a; // 结果[90, 54, 44, 32, 23, 12, 9] }) console.log(ary11);
13、reverse()
把陣列倒過來排列參數:無傳回值:倒序後新陣列是否改變原數組:改變let ary12 = [6,8,10,12]; console.log(ary12.reverse());//[12, 10, 8, 6]
14、 forEach()
迴圈遍歷陣列每一項參數:函數ary.forEach(function(item,index,ary){}) item:每一項index:索引ary:目前數組回傳值:無是否改變原數組:不改變forEach中不能使用continue和break,forEach中不能跳出,只能跳過(return跳過)let ary14 = ['a','b','c','d']; let item = ary14.forEach(function(item,index,ary){ console.log(item,index,ary); })
以上是數組常用方法有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!