最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

JS數(shù)組操作之增刪改查的簡單實現(xiàn)

來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-27 22:32:06
文檔

JS數(shù)組操作之增刪改查的簡單實現(xiàn)

JS數(shù)組操作之增刪改查的簡單實現(xiàn):JS提供了很多方便操作數(shù)組的方法,本文所要分享的就是如何快速對數(shù)組進(jìn)行增、刪、改、查。 一、增 1、push() 可接收任意數(shù)量的參數(shù),把它們逐個添加至數(shù)組末尾,并返回修改后數(shù)組的長度。例如: var arr = []; var len = arr.push(1); con
推薦度:
導(dǎo)讀JS數(shù)組操作之增刪改查的簡單實現(xiàn):JS提供了很多方便操作數(shù)組的方法,本文所要分享的就是如何快速對數(shù)組進(jìn)行增、刪、改、查。 一、增 1、push() 可接收任意數(shù)量的參數(shù),把它們逐個添加至數(shù)組末尾,并返回修改后數(shù)組的長度。例如: var arr = []; var len = arr.push(1); con

JS提供了很多方便操作數(shù)組的方法,本文所要分享的就是如何快速對數(shù)組進(jìn)行增、刪、改、查。

一、增

1、push()

可接收任意數(shù)量的參數(shù),把它們逐個添加至數(shù)組末尾,并返回修改后數(shù)組的長度。例如:

var arr = [];
var len = arr.push(1);
console.log(arr); // [1]
console.log(len); // 1
len = arr.push(2,3);
console.log(arr); // [1,2,3]
console.log(len); // 3

2、unshift()

該方法與push()類似,也可接收任意數(shù)量的參數(shù),只不過是將參數(shù)逐個添加至數(shù)組前端而已,同樣返回新數(shù)組長度。咱們接著上面的例子:

var len = arr.unshift(0);
console.log(arr); // [0, 1, 2, 3]
console.log(len); // 4
len = arr.unshift(-2,-1);
console.log(arr); // [-2, -1, 0, 1, 2, 3]
console.log(len); // 6

3、concat()

該方法與push()方法有點類似,同樣是將元素添加至數(shù)組末尾,只不過這個數(shù)組已經(jīng)不是原來的那個數(shù)組了,而是其副本,所以concat()操作數(shù)組后會返回一個新的數(shù)組。具體用法如下:

① 不傳參數(shù),返回當(dāng)前數(shù)組副本

② 傳遞一或多個數(shù)組,則該方法會將這些數(shù)組中的每一項都添加到結(jié)果數(shù)組中

③ 傳遞非數(shù)組參數(shù),這些參數(shù)就會被直接添加到結(jié)果數(shù)組的末尾

繼續(xù)接著上面的栗子:

var arr1 = arr.concat(4,[5,6]);
console.log(arr); // [-2, -1, 0, 1, 2, 3]
console.log(arr1); // [-2, -1, 0, 1, 2, 3, 4, 5, 6]

例子中一目了然,原數(shù)組保持不變,新數(shù)組后面添加了4、5、6三個元素。

4、splice()

前面的三個方法都具有很大局限性,因為不是添加到數(shù)組前就是數(shù)組后,而splice()就不一樣了,它非常靈活和強(qiáng)大。靈活是因為它可以添加元素到數(shù)組的任意位置,強(qiáng)大是因為它除了可以添加元素之外還具有刪除和替換元素的功能(這個后面會陸續(xù)講到)。

splice()可以向數(shù)組指定位置添加任意數(shù)量的元素,需要傳入至少3個參數(shù): 起始位置、0(要刪除的元素個數(shù))和要添加的元素。

依然接著上面的例子繼續(xù):

arr.splice(3,0,0.2,0.4,0.6,0.8);
console.log(arr); // [-2, -1, 0, 0.2, 0.4, 0.6, 0.8, 1, 2, 3]

可以看出,splice()與push()和unshift()一樣是直接在原數(shù)組上修改的。

二、刪

1、pop()

與push()方法配合使用可以構(gòu)成后進(jìn)先出的棧,該方法可從數(shù)組末尾刪除最后一項并返回該項。

接著上例:

var item = arr.pop();
console.log(item); // 3
console.log(arr); // [-2, -1, 0, 0.2, 0.4, 0.6, 0.8, 1, 2]

2、shift()

與push()方法配合使用可以構(gòu)成先進(jìn)先出的隊列,該方法可刪除數(shù)組第一項并返回該項。

繼續(xù)接著上例:

var item = arr.shift();
console.log(item); // -2
console.log(arr); // [-1, 0, 0.2, 0.4, 0.6, 0.8, 1, 2]

3、slice()

該方法同concat()一樣是返回一個新數(shù)組,不會影響原數(shù)組,只不過slice()是用來裁剪數(shù)組的,返回裁剪下來的數(shù)組,具體用法如下:

slice()方法可以接受一或兩個參數(shù),即要返回項的起始和結(jié)束位置。在只有一個參數(shù)的情況下,slice()方法返回從該參數(shù)指定位置開始到當(dāng)前數(shù)組末尾的所有項。如果有兩個參數(shù),該方法返回起始和結(jié)束位置之間的項——但不包括結(jié)束位置的項。

咱們還是繼續(xù)接著上面例子吧~~

var arr2 = arr.slice(2,6);
console.log(arr); // [-1, 0, 0.2, 0.4, 0.6, 0.8, 1, 2]
console.log(arr2); // [0.2, 0.4, 0.6, 0.8]

4、splice()

好,繼續(xù)講這個“萬能”的方法。

上面講到,該方法在添加數(shù)組元素的時候需要傳入3個以上參數(shù),而其中第2個參數(shù)就是用于指定要刪除元素的個數(shù)的,那時我們傳的是數(shù)字0。那么,如果單單只需刪除元素,我們就只需給splice()傳入兩個參數(shù),第1個參數(shù)用于指定要刪除的第一項的位置,第2個參數(shù)用于指定要刪除元素的個數(shù)。

繼續(xù)上例~~

arr.splice(2,4);
console.log(arr); // [-1, 0, 1, 2]

從索引項為2的位置開始刪除4個元素,所以結(jié)果為 [-1, 0, 1, 2]。

三、改

這個其實最靈活的方式就是直接使用splice()這個強(qiáng)大的方法了,其實通過以上對該方法的了解,我們大致就能知道使用該方法修改數(shù)組元素的基本原理。

原理很簡單,就是向指定位置插入任意數(shù)量的元素,且同時刪除任意數(shù)量的元素。

依然繼續(xù)上例~~

arr.splice(2,1,0.5,1,1.5);
console.log(arr); // [-1, 0, 0.5, 1, 1.5, 2]

四、查

indexOf()和lastIndexOf()

這兩個方法都接收兩個參數(shù):要查找的項和(可選的)表示查找起點位置的索引。其中,indexOf()從數(shù)組的開頭(位置0)開始向后查找,lastIndexOf()方法則從數(shù)組的末尾開始向前查找。

例如:

var index = arr.indexOf(0);
console.log(index); // 1
index = arr.indexOf(3,0);
console.log(index); // -1

當(dāng)找不到該元素時,返回 -1 ,lastIndexOf()方法同理。

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

JS數(shù)組操作之增刪改查的簡單實現(xiàn)

JS數(shù)組操作之增刪改查的簡單實現(xiàn):JS提供了很多方便操作數(shù)組的方法,本文所要分享的就是如何快速對數(shù)組進(jìn)行增、刪、改、查。 一、增 1、push() 可接收任意數(shù)量的參數(shù),把它們逐個添加至數(shù)組末尾,并返回修改后數(shù)組的長度。例如: var arr = []; var len = arr.push(1); con
推薦度:
標(biāo)簽: js 數(shù)組 js數(shù)組
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top