JavaScript中易混淆的slice,splice和split方法

slice

  • slice() 方法可從已有的數組中返回選定的元素,主要用於截取數組,並返回截取到的新數組。
  • 請注意,該方法並不會修改數組,而是返回一個子數組。

    語法

    arrayObject.slice(start,end)
    參數 描述
    start 必需。規定從何處開始選取。若是是負數,那麼它規定從數組尾部開始算起的位置。也就是說,-1 指最後一個元素,-2 指倒數第二個元素,以此類推。
    end 可選。規定從何處結束選取。該參數是數組片段結束處的數組下標。若是沒有指定該參數,那麼切分的數組包含從 start 到數組結束的全部元素。若是這個參數是負數,那麼它規定的是從數組尾部開始算起的元素。
  • (自我理解:選取從開始下標到結束小標位置,返回新數組)
  • 例:

    var arr = ['2016','2017','2018'];

    arr.slice(1,2); => 2017,2018正則表達式

splice

splice() 方法向/從數組中添加/刪除項目,而後返回被刪除的項目。 數組

註釋:該方法會改變原始數組spa

語法

arrayObject.splice(index,howmany,item1,.....,itemX)
參數 描述
index 必需。整數,規定添加/刪除項目的位置,使用負數可從數組結尾處規定位置。
howmany 必需。要刪除的項目數量。若是設置爲 0,則不會刪除項目。
item1, ..., itemX 可選。向數組添加的新項目。

返回值

類型 描述
Array 包含被刪除項目的新數組,若是有的話。

splice() 方法可刪除從 index 處開始的零個或多個元素,而且用參數列表中聲明的一個或多個值來替換那些被刪除的元素。字符串

若是從 arrayObject 中刪除了元素,則返回的是含有被刪除的元素的數組。get

例子:string

     新增it

    var arr = ['2016','2017','2018'];table

    arr.splice(1,0,'2019'); => 2016,2017,2019,2018語法

     刪除方法

    var arr = ['2016','2017','2018'];

    arr.splice(1,1,'2019'); => 2016,2019,2018

split

split() 方法用於把一個字符串分割成字符串數組。

語法

stringObject.split(separator,howmany)
參數 描述
separator 必需。字符串或正則表達式,從該參數指定的地方分割 stringObject。
howmany 可選。該參數可指定返回的數組的最大長度。若是設置了該參數,返回的子串不會多於這個參數指定的數組。若是沒有設置該參數,整個字符串都會被分割,不考慮它的長度。

返回值

一個字符串數組。該數組是經過在 separator 指定的邊界處將字符串 stringObject 分割成子串建立的。返回的數組中的字串不包括 separator 自身。

可是,若是 separator 是包含子表達式的正則表達式,那麼返回的數組中包括與這些子表達式匹配的字串(但不包括與整個正則表達式匹配的文本)。

註釋:String.split() 執行的操做與 Array.join 執行的操做是相反的。

再舉一個簡單的例子

var a="0123456";

var b=a.split("",3); //b=["0","1","2"]

相關文章
相關標籤/搜索