最新文章專題視頻專題問答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
當前位置: 首頁 - 科技 - 知識百科 - 正文

深入理解JS數(shù)組操作方法concat()、slice()、splice()

來源:懂視網(wǎng) 責編:小采 時間:2020-11-27 19:30:43
文檔

深入理解JS數(shù)組操作方法concat()、slice()、splice()

深入理解JS數(shù)組操作方法concat()、slice()、splice():最近比較閑,將所學的知識進行了總結(jié),這篇文章概括了數(shù)組的不同操作方法,concat()、slice()和splice(),有需要的朋友可以參考一下,希望對你有用。concat()方法concat()方法:基于當前數(shù)組中所有項創(chuàng)建新數(shù)組。 具體過程為:先創(chuàng)建數(shù)組的一個副本,若是co
推薦度:
導讀深入理解JS數(shù)組操作方法concat()、slice()、splice():最近比較閑,將所學的知識進行了總結(jié),這篇文章概括了數(shù)組的不同操作方法,concat()、slice()和splice(),有需要的朋友可以參考一下,希望對你有用。concat()方法concat()方法:基于當前數(shù)組中所有項創(chuàng)建新數(shù)組。 具體過程為:先創(chuàng)建數(shù)組的一個副本,若是co

最近比較閑,將所學的知識進行了總結(jié),這篇文章概括了數(shù)組的不同操作方法,concat()、slice()和splice(),有需要的朋友可以參考一下,希望對你有用。

concat()方法

concat()方法:基于當前數(shù)組中所有項創(chuàng)建新數(shù)組。
具體過程為:先創(chuàng)建數(shù)組的一個副本,若是concat()存在參數(shù),將接收到的參數(shù)添加到副本的末尾,然后返回新構(gòu)建的數(shù)組;若是沒有傳遞參數(shù),僅僅復制當前數(shù)組并返回副本數(shù)組。
concat()中的參數(shù)可以是一個新的數(shù)組也可以是一個字符串。

var colors = ["red","green","blue"];
var colors2 = colors.concat("yellow",["black","brown"]);
alert(colors);
alert(colors2);

結(jié)果為colors為數(shù)組[“red”,”green”,”blue”];
colors2為數(shù)組[“red”,”green”,”blue”,”yellow”,”black”,”brown”];
concat()方法只是用當前數(shù)組重新創(chuàng)建一個新的數(shù)組,因此當前數(shù)組保持不變(colors數(shù)組不變)。

slice()方法

slice()方法:基于當前數(shù)組中的一個或多個項創(chuàng)建一個新數(shù)組。
slice()方法中可以有一個或者兩個參數(shù)(代表數(shù)組的索引值,0,1,2……)。接收一個參數(shù)時:返回當前數(shù)組中從此參數(shù)位置開始到當前數(shù)組末尾間所有項。接收兩個參數(shù)時:返回當前數(shù)組中兩個參數(shù)位置間的所有項,但不返回第二個參數(shù)位置的項。
參數(shù)也可以為負數(shù),表示從末尾算起,-1代表最后一個,使用方法和正數(shù)一樣。

var colors = ["red","green","blue","yellow","black","brown"];
var colors2 = colors.slice(2);
var colors3 = colors.slice(1,4);
var colors4 = colors.slice(2,-2);
var colors5 = colors.slice(-3,-1);
console.log(colors2);
console.log(colors3);
console.log(colors4);
console.log(colors5);

結(jié)果為:[“blue”, “yellow”, “black”, “brown”]
[“green”, “blue”, “yellow”]
[“blue”, “yellow”]
[“yellow”, “black”]
另外slice()方法還可用于對數(shù)組的移除

Array.prototype.remove = function(from, to) {
 var rest = this.slice((to || from) + 1 || this.length);
 this.length = from <0 ? this.length + from : from;
 return this.push.apply(this, rest);
};

對于

rest = this.slice((to || from) + 1 || this.length);

若to不等于0,(to||from)就等于to,且to+1不等于0,則((to || from) + 1 || this.length)為to+1),若to+1=0,((to || from) + 1 || this.length)為this.length;
若to=0,(to||from)取from,若from+1不等于0,((to || from) + 1 || this.length)為from+1,若from+1=0, ((to || from) + 1 || this.length)為this.length。

splice()方法

splice()主要用途是向當前數(shù)組的中間插入項,可以進行刪除、插入、替換操作。會返回一個數(shù)組,包含從原始項中刪除的項(若果沒有刪除,返回一個空數(shù)組)
刪除:兩個參數(shù),刪除起始項的位置和刪除的項數(shù)。

var colors = ["red","green","blue"];
var removed = colors.splice(1,2);
alert(colors); //red
alert(removed); //green,blue

插入:在指定位置插入任意數(shù)量項,包括兩個基本參數(shù)(即刪除操作中的兩個參數(shù)類型)和要插入項的參數(shù),兩個基本參數(shù)為起始位置和0(要刪除的項數(shù)應為0項),要插入的項參數(shù)可以是任意個(”red”,”green”,”blue”)。

var colors = ["red","green","blue"];
var removed = colors.splice(1,0,"yellow","orange");
alert(colors); //"red","yellow","orange","green","blue"
alert(removed); //空數(shù)組

替換:向指定位置插入任意數(shù)量的項同時刪除任意數(shù)量的項,插入項數(shù)和刪除項數(shù)可以不同。參數(shù)包括兩個基本參數(shù)(即刪除操作中的兩個參數(shù)類型)和要插入項的參數(shù)。

var colors = ["red","green","blue"];
var removed = colors.splice(1,1,"purple","black");
alert(colors); //"red","purple","black","blue"
alert(removed); //"green"

其實總的理解是splice()方法包含兩個刪除項基本參數(shù)和任意個插入項參數(shù),兩個刪除項基本參數(shù)中第一個指定刪除位置,第二個指定刪除個數(shù),如果個數(shù)為0,自然不刪除,只有指定位置功能了。任意個插入項參數(shù)代表要插入的項值,數(shù)量不限,可省略,省略時splice()方法只進行刪除操作。

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

文檔

深入理解JS數(shù)組操作方法concat()、slice()、splice()

深入理解JS數(shù)組操作方法concat()、slice()、splice():最近比較閑,將所學的知識進行了總結(jié),這篇文章概括了數(shù)組的不同操作方法,concat()、slice()和splice(),有需要的朋友可以參考一下,希望對你有用。concat()方法concat()方法:基于當前數(shù)組中所有項創(chuàng)建新數(shù)組。 具體過程為:先創(chuàng)建數(shù)組的一個副本,若是co
推薦度:
標簽: 方法 sp 數(shù)組
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top