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)開(kāi)始的指定數(shù)目的字符(http://www.w3school.com.cn/jsref/jsref_substr.asp)。

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

返回值
一個(gè)新的字符串,包含從 stringObject 的 start(包括 start 所指的字符) 處開(kāi)始的 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á)式匹配的文本)。

提示和注釋

注釋?zhuān)喝绻芽兆址?("") 用作 separator,那么 stringObject 中的每個(gè)字符之間都會(huì)被分割。

注釋?zhuān)篠tring.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)目。
返回值
類(lèi)型 描述
Array 包含被刪除項(xiàng)目的新數(shù)組,如果有的話。
說(shuō)明
splice() 方法可刪除從 index 處開(kāi)始的零個(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ī)定從何處開(kāi)始選取。如果是負(fù)數(shù),那么它規(guī)定從數(shù)組尾部開(kāi)始算起的位置。也就是說(shuō),-1 指最后一個(gè)元素,-2 指倒數(shù)第二個(gè)元素,以此類(lèi)推。
end 可選。規(guī)定從何處結(jié)束選取。該參數(shù)是數(shù)組片斷結(jié)束處的數(shù)組下標(biāo)。如果沒(méi)有指定該參數(shù),那么切分的數(shù)組包含從 start 到數(shù)組結(jié)束的所有元素。如果這個(gè)參數(shù)是負(fù)數(shù),那么它規(guī)定的是從數(shù)組尾部開(kāi)始算起的元素。
返回值
返回一個(gè)新的數(shù)組,包含從 start 到 end (不包括該元素)的 arrayObject 中的元素。

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

提示和注釋
注釋?zhuān)耗墒褂秘?fù)值從數(shù)組的尾部選取元素。

注釋?zhuān)喝绻?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)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,606評(píng)論 6 533
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,582評(píng)論 3 418
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說(shuō)我怎么就攤上這事。” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 176,540評(píng)論 0 376
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 63,028評(píng)論 1 314
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 71,801評(píng)論 6 410
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 55,223評(píng)論 1 324
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,294評(píng)論 3 442
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 42,442評(píng)論 0 289
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 48,976評(píng)論 1 335
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 40,800評(píng)論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 42,996評(píng)論 1 369
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,543評(píng)論 5 360
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,233評(píng)論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 34,662評(píng)論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 35,926評(píng)論 1 286
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 51,702評(píng)論 3 392
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 47,991評(píng)論 2 374

推薦閱讀更多精彩內(nèi)容

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