400-650-7353
您所在的位置:首頁 > IT干貨資料 > web前端 > 【W(wǎng)eb前端基礎(chǔ)知識(shí)】String對(duì)象(下)

【W(wǎng)eb前端基礎(chǔ)知識(shí)】String對(duì)象(下)

  • 發(fā)布: 優(yōu)就業(yè)it培訓(xùn)
  • 來源:
  • 2022-08-03 17:24:36
  • 閱讀()
  • 分享
  • 手機(jī)端入口

String.prototype.substring()

substring方法用于從原字符串取出子字符串并返回,不改變?cè)址,跟slice方法很相像。它的第一個(gè)參數(shù)表示子字符串的開始位置,第二個(gè)位置表示結(jié)束位置(返回結(jié)果不含該位置)。

  1. 'JavaScript'.substring(0, 4) // "Java" 

如果省略第二個(gè)參數(shù),則表示子字符串一直到原字符串的結(jié)束。

  1. 'JavaScript'.substring(4) // "Script" 

如果第一個(gè)參數(shù)大于第二個(gè)參數(shù),substring方法會(huì)自動(dòng)更換兩個(gè)參數(shù)的位置。

  1. 'JavaScript'.substring(10, 4) // "Script" 
  2.  
  3. // 等同于 
  4.  
  5. 'JavaScript'.substring(4, 10) // "Script" 

上面代碼中,調(diào)換substring方法的兩個(gè)參數(shù),都得到同樣的結(jié)果。

如果參數(shù)是負(fù)數(shù),substring方法會(huì)自動(dòng)將負(fù)數(shù)轉(zhuǎn)為0。

  1. 'JavaScript'.substring(-3) // "JavaScript" 
  2.  
  3. 'JavaScript'.substring(4, -3) // "Java" 

上面代碼中,第二個(gè)例子的參數(shù)-3會(huì)自動(dòng)變成0,等同于'JavaScript'.substring(4, 0)。由于第二個(gè)參數(shù)小于第一個(gè)參數(shù),會(huì)自動(dòng)互換位置,所以返回Java。

由于這些規(guī)則違反直覺,因此不建議使用substring方法,應(yīng)該優(yōu)先使用slice。

String.prototype.substr()

substr方法用于從原字符串取出子字符串并返回,不改變?cè)址,跟slice和substring方法的作用相同。

substr方法的第一個(gè)參數(shù)是子字符串的開始位置(從0開始計(jì)算),第二個(gè)參數(shù)是子字符串的長度。

  1. 'JavaScript'.substr(4, 6) // "Script" 

如果省略第二個(gè)參數(shù),則表示子字符串一直到原字符串的結(jié)束。

  1. 'JavaScript'.substr(4) // "Script" 

如果第一個(gè)參數(shù)是負(fù)數(shù),表示倒數(shù)計(jì)算的字符位置。如果第二個(gè)參數(shù)是負(fù)數(shù),將被自動(dòng)轉(zhuǎn)為0,因此會(huì)返回空字符串。

  1. 'JavaScript'.substr(-6) // "Script" 
  2.  
  3. 'JavaScript'.substr(4, -1) // "" 

上面代碼中,第二個(gè)例子的參數(shù)-1自動(dòng)轉(zhuǎn)為0,表示子字符串長度為0,所以返回空字符串。

String.prototype.indexOf(),String.prototype.lastIndexOf()

indexOf方法用于確定一個(gè)字符串在另一個(gè)字符串中第一次出現(xiàn)的位置,返回結(jié)果是匹配開始的位置。如果返回-1,就表示不匹配。

  1. 'hello world'.indexOf('o'// 4 
  2.  
  3. 'JavaScript'.indexOf('script'// -1 

indexOf方法還可以接受第二個(gè)參數(shù),表示從該位置開始向后匹配。

  1. 'hello world'.indexOf('o', 6) // 7 

lastIndexOf方法的用法跟indexOf方法一致,主要的區(qū)別是lastIndexOf從尾部開始匹配,indexOf則是從頭部開始匹配。

  1. 'hello world'.indexOf('o', 6) // 7 

另外,lastIndexOf的第二個(gè)參數(shù)表示從該位置起向前匹配。

  1. 'hello world'.lastIndexOf('o', 6) // 4 

String.prototype.trim()

trim方法用于去除字符串兩端的空格,返回一個(gè)新字符串,不改變?cè)址?/p>

  1. ' hello world '.trim() 
  2.  
  3. // "hello world" 

該方法去除的不僅是空格,還包括制表符(\t、\v)、換行符(\n)和回車符(\r)。

  1. '\r\nabc \t'.trim() // 'abc' 

String.prototype.split()

split方法按照給定規(guī)則分割字符串,返回一個(gè)由分割出來的子字符串組成的數(shù)組。

  1. 'a|b|c'.split('|'// ["a", "b", "c"] 

如果分割規(guī)則為空字符串,則返回?cái)?shù)組的成員是原字符串的每一個(gè)字符。

  1. 'a|b|c'.split(''// ["a", "|", "b", "|", "c"] 

如果省略參數(shù),則返回?cái)?shù)組的唯一成員就是原字符串。

  1. 'a|b|c'.split() // ["a|b|c"] 

如果滿足分割規(guī)則的兩個(gè)部分緊鄰著(即兩個(gè)分割符中間沒有其他字符),則返回?cái)?shù)組之中會(huì)有一個(gè)空字符串。

  1. 'a||c'.split('|'// ['a', '', 'c'] 

如果滿足分割規(guī)則的部分處于字符串的開頭或結(jié)尾(即它的前面或后面沒有其他字符),則返回?cái)?shù)組的第一個(gè)或最后一個(gè)成員是一個(gè)空字符串。

  1. '|b|c'.split('|'// ["", "b", "c"] 
  2.  
  3. 'a|b|'.split('|'// ["a", "b", ""] 

以上,我們對(duì)String對(duì)象創(chuàng)建方式和常用方法做了說明,希望能讓你對(duì)String對(duì)象有清晰的了解。

文章“【W(wǎng)eb前端基礎(chǔ)知識(shí)】String對(duì)象(下)”已幫助

>>本文地址:http://liujunjsxg.cn/zhuanye/2022/72193.html

THE END  

聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。

1 您的年齡

2 您的學(xué)歷

3 您更想做哪個(gè)方向的工作?

獲取測(cè)試結(jié)果
  • 大前端大前端
  • 大數(shù)據(jù)大數(shù)據(jù)
  • 互聯(lián)網(wǎng)營銷互聯(lián)網(wǎng)營銷
  • JavaJava
  • Linux云計(jì)算Linux
  • Python+人工智能Python
  • 嵌入式物聯(lián)網(wǎng)嵌入式
  • 全域電商運(yùn)營全域電商運(yùn)營
  • 軟件測(cè)試軟件測(cè)試
  • 室內(nèi)設(shè)計(jì)室內(nèi)設(shè)計(jì)
  • 平面設(shè)計(jì)平面設(shè)計(jì)
  • 電商設(shè)計(jì)電商設(shè)計(jì)
  • 網(wǎng)頁設(shè)計(jì)網(wǎng)頁設(shè)計(jì)
  • 全鏈路UI/UE設(shè)計(jì)UI設(shè)計(jì)
  • VR/AR游戲開發(fā)VR/AR
  • 網(wǎng)絡(luò)安全網(wǎng)絡(luò)安全
  • 新媒體與短視頻運(yùn)營新媒體
  • 直播帶貨直播帶貨
  • 智能機(jī)器人軟件開發(fā)智能機(jī)器人
 

快速通道fast track

近期開班時(shí)間TIME