js中slice(),splice(),split(),substring(),substr()的使用和區別


1.slice()

可從已有的數組中返回選定的元素。

使用范圍:

  Array 和String

語法:

  obj.slice(start, end)

參數:

  start: 必需。規定從數組(字符串)的哪個index開始選取,如果是負數,則從數組(字符串)尾部算index,比如,-1指最后一個元素,-2指倒數第二個元素。

  end:可選。規定到哪個index之前結束。如果沒有指定該參數,那么切分的數組(字符串)包含從start到數組(字符串)結束的所有元素。如果這個參數是負數,那么它規定的是從數組(字符串)尾部開始算起的元素。

返回值:

  返回一個新的數組(字符串),包含從start到end(不包含改元素)的obj中的元素。

說明:

  該方法並不會修改數組(字符串),而是返回一個子數組(子串)。

例子:

  

 

2.splice()

向/從數組中添加/刪除項目,然后返回被刪除的項目。

該方法會改變原始數組

使用范圍:

  Array

語法:

  arrayObject.splice(index, howmany, ite1,......, itemxX)

參數:

  index: 必需。正數,規定添加/刪除項目的index,使用負數可從數組結尾處規定位置。

  howmany: 必需。要刪除的項目數量。如果設置為0,則不會刪除項目。

  item1, ..., itemX: 可選。向數組添加的新元素。

返回值:

  Array: 包含被刪除項目的新數組,如果有的話。

說明:

  splice()方法可刪除從Index處開始的零個或者多個元素,並且用參數列表中聲明的一個或者多個值來替換那些被刪除的元素。如果從arrayObject中刪除了元素,則返回的是包含被刪除的元素的數組。

例子:

  

3.split()

用於把一個字符串分割成字符串數組

使用范圍:

  String

語法:

  stringObject.split(seperator, howmany)

參數:

  seperator: 必需。字符串或者正則表達式,從該參數指定的地方分割stringObject。

  howmany: 可選。該參數可指定返回的數組的最大長度。如果設置了該參數,返回的子串不會多於這個參數指定的數組。如果沒有設置改參數,整個字符串都會被分割,不考慮它的長度。

返回值:

  一個字符串數組。該數組是在separator指定的邊界處將字符串stringObject分割成子串創建的。返回的數組中的子串不包括seperator自身。但是,如果seperator是包含子表達式的正則表達式,那么返回的數組中包括與這些子表達式匹配的字符串(但不包括與整個正則表達式匹配的文本)。

提示:

  如果把空字符串('')用作seperator,呢么stringObject中的每個字符之間都會被分割;

  String.split()執行的操作與Array.join執行的操作是相反的。

例子:

  

4.substring()

用於提取字符串中介於兩個指定index之間的字符

使用范圍:

  String

語法:

  stringObject.substring(start, stop)

參數:

  start: 必需。一個非負的正數,規定要提取的子串的第一個字符在stringObject中的位置。

  stop: 可選。一個非負的正數,比要提取的子串的最后一個字符在stringObject中的位置多1.如果省略該參數,那么返回的子串會一直到字符串的結尾。

返回值:

  一個新的字符串,該字符串值包含stringObject的一個子字符串,其內容是從start處到stop-1處的所有字符,其長度為stop減start。

說明:

  substring()方法返回的子串包括start處的字符,但不包括stop處的字符。如果stop和start相等,返回的是一個空串。如果start比stop大,那么該方法在提取子串之前會先交換這兩個參數。

提示:

  與slice()和substr()方法不同的是,substring()不接受負的參數。

例子:

  

5.substr()

在字符串中抽取從start下表開始的指定書目的字符。

語法:

  stringObject.substr(start, length)

參數:

  start: 必需。要抽取的子串的其實下表。必需是數值。如果是負數,那么該參數聲明從字符串的尾部開始算起的位置。也就是說,-1指字符串中最后一個字符,-2指倒數第二個字符,以此類推。

  length: 可選。字串中的字符數,必須是數值,如果省略了該參數,那么返回從stringObject的開始位置到結束的字符串。

返回值:

  一個新的字符串,包含從stringObject的start處開始的length哥字符。

提示:

  substr()的參數指定的是子串的開始位置和長度,因此它可以替代substring()和slice()來使用。

  ES中沒有對該方法進行標准化,因此反對使用。

例子:

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM