JS中substr, substring, split, splice, slice,join方法總結(jié)

substr: stringObject.substr(start, length), 返回新字符串,包含start處字符,start參數(shù)必需,length可選。
substring: stringObject.substring(start, stop), 返回新字符串,包含start處字符,不包含stop處字符,start參數(shù)必需,stop可選。
split: stringObject.split(separator,howmany), 返回字符串?dāng)?shù)組,separator必需,howmany可選。
splice: arrayObject.splice(index,howmany,item1,.....,itemX), 返回被刪除的項(xiàng)目,會(huì)改變?cè)紨?shù)組, index, howmany必需,item1, ..., itemX 可選。
slice: arrayObject.slice(start,end), 返回子數(shù)組,不會(huì)改變?cè)紨?shù)組,start必需,end可選,包含start處元素,不包含end處元素。
join: arrayObject.join(separator),返回字符串,separator可選,省略該參數(shù),則使用逗號(hào)作為分隔符。

substr: 可在字符串中抽取從 start 下標(biāo)開始的指定數(shù)目的字符(http://www.w3school.com.cn/jsref/jsref_substr.asp)。

語(yǔ)法
stringObject.substr(start,length)
start: 必需。要抽取的子串的起始下標(biāo)。必須是數(shù)值。如果是負(fù)數(shù),那么該參數(shù)聲明從字符串的尾部開始算起的位置。也就是說(shuō),-1 指字符串中最后一個(gè)字符,-2 指倒數(shù)第二個(gè)字符,以此類推。
length: 可選。子串中的字符數(shù)。必須是數(shù)值。如果省略了該參數(shù),那么返回從 stringObject 的開始位置到結(jié)尾的字串。

返回值
一個(gè)新的字符串,包含從 stringObject 的 start(包括 start 所指的字符) 處開始的 length 個(gè)字符。如果沒(méi)有指定 length,那么返回的字符串包含從 start 到 stringObject 的結(jié)尾的字符。

舉例說(shuō)明:

var str = 'abcdefg'
console.log(str.substr(1, 2)) // 'bc'
console.log(str.substr(0) // 'abcdefg'

substring: 用于提取字符串中介于兩個(gè)指定下標(biāo)之間的字符(http://www.w3school.com.cn/jsref/jsref_substring.asp)。

語(yǔ)法
stringObject.substring(start,stop)
參數(shù) 描述
start 必需。一個(gè)非負(fù)的整數(shù),規(guī)定要提取的子串的第一個(gè)字符在 stringObject 中的位置。
stop
可選。一個(gè)非負(fù)的整數(shù),比要提取的子串的最后一個(gè)字符在 stringObject 中的位置多 1。

如果省略該參數(shù),那么返回的子串會(huì)一直到字符串的結(jié)尾。

返回值
一個(gè)新的字符串,該字符串值包含 stringObject 的一個(gè)子字符串,其內(nèi)容是從 start 處到 stop-1 處的所有字符,其長(zhǎng)度為 stop 減 start。

說(shuō)明
substring() 方法返回的子串包括 start 處的字符,但不包括 stop 處的字符。

如果參數(shù) start 與 stop 相等,那么該方法返回的就是一個(gè)空串(即長(zhǎng)度為 0 的字符串)。如果 start 比 stop 大,那么該方法在提取子串之前會(huì)先交換這兩個(gè)參數(shù)。

舉例:

var str = 'abcdefg'
console.log(str.substring(1, 2)) // 'b'
console.log(str.substring(0) // 'abcdefg'
console.log(str.substring(1,1)) // ''

split:用于把一個(gè)字符串分割成字符串?dāng)?shù)組。(http://www.w3school.com.cn/js/jsref_split.asp)

語(yǔ)法

<pre style="margin: 15px 0px 0px; padding: 20px; border: 1px dotted rgb(119, 136, 85); font-family: Consolas; width: 765px; background: rgb(245, 245, 245); line-height: 1.4;">stringObject.split(separator,howmany)</pre>

| 參數(shù) | 描述 |
| separator | 必需。字符串或正則表達(dá)式,從該參數(shù)指定的地方分割 stringObject。 |
| howmany | 可選。該參數(shù)可指定返回的數(shù)組的最大長(zhǎng)度。如果設(shè)置了該參數(shù),返回的子串不會(huì)多于這個(gè)參數(shù)指定的數(shù)組。如果沒(méi)有設(shè)置該參數(shù),整個(gè)字符串都會(huì)被分割,不考慮它的長(zhǎng)度。 |

返回值

一個(gè)字符串?dāng)?shù)組。該數(shù)組是通過(guò)在 separator 指定的邊界處將字符串 stringObject 分割成子串創(chuàng)建的。返回的數(shù)組中的字串不包括 separator 自身。

但是,如果 separator 是包含子表達(dá)式的正則表達(dá)式,那么返回的數(shù)組中包括與這些子表達(dá)式匹配的字串(但不包括與整個(gè)正則表達(dá)式匹配的文本)。

提示和注釋

注釋:如果把空字符串 ("") 用作 separator,那么 stringObject 中的每個(gè)字符之間都會(huì)被分割。

注釋:String.split() 執(zhí)行的操作與 Array.join 執(zhí)行的操作是相反的。

舉例

var str="How are you doing today?"
console.log(str.split(" ")) //How,are,you,doing,today?
console.log(str.split("")) //H,o,w, ,a,r,e, ,y,o,u, ,d,o,i,n,g, ,t,o,d,a,y,?
console.log(str.split(" ",3)) //How,are,you

splice: 向/從數(shù)組中添加/刪除項(xiàng)目,然后返回被刪除的項(xiàng)目。該方法會(huì)改變?cè)紨?shù)組。(http://www.w3school.com.cn/jsref/jsref_splice.asp)

語(yǔ)法
arrayObject.splice(index,howmany,item1,.....,itemX)
參數(shù) 描述
index 必需。整數(shù),規(guī)定添加/刪除項(xiàng)目的位置,使用負(fù)數(shù)可從數(shù)組結(jié)尾處規(guī)定位置。
howmany 必需。要?jiǎng)h除的項(xiàng)目數(shù)量。如果設(shè)置為 0,則不會(huì)刪除項(xiàng)目。
item1, ..., itemX 可選。向數(shù)組添加的新項(xiàng)目。
返回值
類型 描述
Array 包含被刪除項(xiàng)目的新數(shù)組,如果有的話。
說(shuō)明
splice() 方法可刪除從 index 處開始的零個(gè)或多個(gè)元素,并且用參數(shù)列表中聲明的一個(gè)或多個(gè)值來(lái)替換那些被刪除的元素。

如果從 arrayObject 中刪除了元素,則返回的是含有被刪除的元素的數(shù)組。

舉例:

var arr = new Array(6)
arr[0] = 'hello',
arr[0] = "you"
arr[1] = "are"
arr[2] = "my"
arr[3] = "world"
arr[4] = "oh"
arr[5] = "beauty"
console.log(arr) // ["you", "are", "my", "world", "oh", "beauty"]
console.log(arr.splice(2, 0, 'not')) //["you", "are", "not", "my", "world", "oh", "beauty"]

slice: slice() 方法可從已有的數(shù)組中返回選定的元素

語(yǔ)法
arrayObject.slice(start,end)
參數(shù) 描述
start 必需。規(guī)定從何處開始選取。如果是負(fù)數(shù),那么它規(guī)定從數(shù)組尾部開始算起的位置。也就是說(shuō),-1 指最后一個(gè)元素,-2 指倒數(shù)第二個(gè)元素,以此類推。
end 可選。規(guī)定從何處結(jié)束選取。該參數(shù)是數(shù)組片斷結(jié)束處的數(shù)組下標(biāo)。如果沒(méi)有指定該參數(shù),那么切分的數(shù)組包含從 start 到數(shù)組結(jié)束的所有元素。如果這個(gè)參數(shù)是負(fù)數(shù),那么它規(guī)定的是從數(shù)組尾部開始算起的元素。
返回值
返回一個(gè)新的數(shù)組,包含從 start 到 end (不包括該元素)的 arrayObject 中的元素。

說(shuō)明
請(qǐng)注意,該方法并不會(huì)修改數(shù)組,而是返回一個(gè)子數(shù)組。如果想刪除數(shù)組中的一段元素,應(yīng)該使用方法 Array.splice()。

提示和注釋
注釋:您可使用負(fù)值從數(shù)組的尾部選取元素。

注釋:如果 end 未被規(guī)定,那么 slice() 方法會(huì)選取從 start 到數(shù)組結(jié)尾的所有元素。
舉例說(shuō)明

join: join() 方法用于把數(shù)組中的所有元素放入一個(gè)字符串。(http://www.w3school.com.cn/jsref/jsref_join.asp)。

語(yǔ)法
arrayObject.join(separator)
參數(shù) 描述
separator 可選。指定要使用的分隔符。如果省略該參數(shù),則使用逗號(hào)作為分隔符。
返回值
返回一個(gè)字符串。該字符串是通過(guò)把 arrayObject 的每個(gè)元素轉(zhuǎn)換為字符串,然后把這些字符串連接起來(lái),在兩個(gè)元素之間插入 separator 字符串而生成的。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. javascript刪除元素節(jié)點(diǎn) IE中有這樣一個(gè)方法:removeNode(),這個(gè)方法在IE下是好使的,...
    落魂灬閱讀 414評(píng)論 0 1
  • 1.removeAttribute() 方法刪除指定的屬性 2.parseInt()轉(zhuǎn)整型,保留整數(shù)部分。 ...
    給我一只猴子閱讀 358評(píng)論 0 0
  • 我們先大致來(lái)了解一下javascript的內(nèi)容,然后由淺入深的來(lái)學(xué)習(xí),進(jìn)一步提升對(duì)WEB前端技術(shù)的興趣。 如何插入...
    yezi1004閱讀 1,468評(píng)論 0 0
  • 變量命名、聲明、賦值 1.必須以字母、下劃線或美元符號(hào)開頭,后面可以跟字母、下劃線、美元符號(hào)和數(shù)字。2.變量名區(qū)分...
    wq04200閱讀 680評(píng)論 0 1
  • slice() substring() substr() 1、substring(start,stop) 用于提取...
    MakingChoice閱讀 572評(píng)論 0 2

友情鏈接更多精彩內(nèi)容