陣列常用的一些方法

2022-04-06 07:54:42 字數 4448 閱讀 2658

1、push()

向陣列的末尾新增新內容

引數:要新增的項。傳遞多個用逗號隔開,任何資料型別都可以

返回值:新增後陣列的長度

是否改變原陣列:改變

let ary1 = [12,34,26];

ary1.push(100); //

返回乙個新的長度 length=4

console.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(-2,-1));//

[8]

6、splice()

對陣列進行增刪改

返回空陣列

修改: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'));//

2console.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'));//

2console.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))

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))

陣列的一些常用方法

foreach some filter let arr 10,20,30,40,50,60 let r arr.filter item console.log r 40,50,60 slice slice 接受一或兩個引數,即要返回項的起始和結束位置 乙個引數,slice 返回 從該引數指定位置開始...

陣列的一些常用方法

通過運用一些陣列的方法,能更有利方便的讓我們的陣列中的資料進行管理,那這些方法都是什麼,他們都用什麼作用呢?下面讓我來給大家詳解一下。先給定乙個陣列 var arr hello 1,2,3,world 下面就讓我們來通過陣列的一些常用方法來管理這些資料把!1.push 引數 任意個,任意值 返回值 ...

陣列方法的一些常用方法

js的陣列的方法有很多,先介紹幾個基本的方法 註解 1.2.引數中括號的內容 可選是可不寫的引數 有預設值 不含是返回值不包含該位置元素 3.結果 只在我函式中加了引數的情況下才有 否則為無。而且只是給出陣列變化結果,並不一定是方法的返回值 4.為了簡短起見,下文會使用js中的一些型別名稱的縮寫 a...