常用的字符串方法大全

JavaScript中字符串作為基本類型舍杜,它為我們提供了很多好用的API新娜,本期就來總結(jié)一下一些常見的字符串方法吧

字符串的方法按照功能來劃分,可分為增刪改查四個部分

寫在前面:了解一個方法既绩,我們可以通過三個方面概龄,1.方法的用途 2.參數(shù) 3.返回值

本文介紹的所有字符串方法,都是會新建一個字符串不會改變原有的字符串

一饲握、拼接或截取字符串

1.str.concat():用于將一個或多個字符串拼接起來私杜,返回拼接后的新字符串

參數(shù):可以有多個,用來拼接到str上的字符串

letstr='hello';

console.log(str.concat(' ','world'))//'hello world'

說明:此方法效率并不高救欧,用“+”或者``模板字符串代替比較好

2.str.slice():此方法用來提取一個字符串衰粹,并返回一個新的字符串

參數(shù):1)beginIndex,表示從該索引處開始提取字符串的字符(包括)笆怠,如果為負(fù)數(shù)則從后開始計算

? ? ? ? ? ? 2)endIndex铝耻,表示從該索引處結(jié)束提取字符串(不包括),如果省略則一直提取到字符串末尾骑疆,如果為負(fù)數(shù)從后開始計算

letstr='hello world';

console.log(str.slice(6))//'world'

console.log(str.slice(-5,-3))//'wo'

?

3.str.substring():此方法和slice方法功能相同都是提取一個字符串田篇,并返回提取到的字符串

參數(shù):1)startIndex,表示從該索引處開始提取字符串的字符(包括)

? ? ? ? ? ? 2)endIndex,表示從該索引處結(jié)束提取字符串(不包括)

? ? ? ? ? ? 3)上述兩個參數(shù):如果為負(fù)數(shù)或者NaN則都會被當(dāng)做0箍铭,如果大于字符串的長度則會被當(dāng)做字符串的長度來計算泊柬,如果 startIndex 大于 endIndex,則 substring 的執(zhí)行效果就像兩個參數(shù)調(diào)換了一樣

letstr='hello world';

console.log(str.substring(-1,5))//'hello'

console.log(str.substring(5,-1))//'hello'

二诈火、刪除字符串

str.trim():刪除一個字符串兩端的空白字符兽赁,并返回刪除后的新字符串,不會改變原有字符串

三冷守、改變字符串

1.str.toLowerCase():此方法沒有參數(shù)刀崖,會將調(diào)用該方法的字符串值轉(zhuǎn)為小寫形式,并返回

2.str.toUpperCase():此方法沒有參數(shù)拍摇,會將調(diào)用該方法的字符串值轉(zhuǎn)為大寫形式亮钦,并返回

3.str.replace():可以將一個替換值替換字符串的一部分,返回替換后的新字符串

參數(shù):1)一個字符串中要被替換的子字符串或者正則表達(dá)式充活,默認(rèn)值替換第一個蜂莉,可以在正則表達(dá)式中設(shè)置全局模式蜡娶,來替換所有匹配的子字符串

? ? ? ? ? ? 2)一個替換值

letstr='hello world';

console.log(str.replace(/o/g,"f"))//"hellf wfrld"

4.str.split():可以使用一個指定的分隔符來將字符串拆分成數(shù)組,返回一個數(shù)組

參數(shù):1)分隔符映穗,可以為一個字符串也可以為正則表達(dá)式窖张,為空的話則將每個字符都拆分。默認(rèn)全局拆分

? ? ? ? ? ? 2)拆分的長度(可選)蚁滋,為一個整數(shù)用來限制拆分的個數(shù)宿接,如果超過了這個數(shù)量則新數(shù)組中不返回剩下的文本

letstr='hello world';

console.log(str.split(" "))//["hello", "world"]

四、查詢字符串

1.str.charAt():從一個字符串中返回指定的字符

參數(shù):index辕录,介于0~length-1之間的整數(shù)睦霎,默認(rèn)為0

letstr='hello world';

console.log(str.charAt(1))//'e'

2.str.includes():判斷字符串中是否包含指定字符,包含則返回true踏拜,不包含則返回false

參數(shù):subStr碎赢,指定的字符串

letstr='hello world';

console.log(str.includes('hello'))//true

console.log(str.includes('fire'))//flase

3.str.indexOf():判斷字符串中是否包含指定字符,如果包含則返回該字符索引的位置(查找到了立即返回)速梗,如果不包含則返回-1

參數(shù):subStr肮塞,指定的字符串

letstr='hello world';

console.log(str.indexOf('world'))//6

console.log(str.indexOf('fire'))//-1

4.str.lastIndexOf():用法和indexOf基本相同,區(qū)別是lastIndexOf()是從后往前查找

5.str.search():使用正則表達(dá)式查找指定字符串姻锁,如果找到則返回首次匹配成功的索引枕赵,沒有找到則返回-1

參數(shù):一個正則表達(dá)式,如果傳入一個非正則表達(dá)式則會隱式的將其轉(zhuǎn)換為正則表達(dá)式對象

letstr='hello world';

console.log(str.search('world'))//6

console.log(str.search(/w/))//6

6.str.match():返回一個字符串匹配正則表達(dá)式的結(jié)果,如果未設(shè)置全局匹配位隶,則會返回第一個完整匹配及其相關(guān)的捕獲組拷窜,捕獲組中包含有g(shù)roups、index涧黄、input等屬性篮昧。

參數(shù):一個正則表達(dá)式,如果傳入一個非正則表達(dá)式則會隱式的將其轉(zhuǎn)換為正則表達(dá)式對象

letstr='hello world';

console.log(str.match(/l/))//["l", index: 2, input: "hello world", groups: undefined]

console.log(str.match(/l/g))//["l", "l", "l"]

好了笋妥,以上就是本期內(nèi)容啦懊昨,如果對你有幫助的話,請幫忙點個贊吧4盒=桶洹!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末月帝,一起剝皮案震驚了整個濱河市躏惋,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌嚷辅,老刑警劉巖簿姨,帶你破解...
    沈念sama閱讀 219,039評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異簸搞,居然都是意外死亡款熬,警方通過查閱死者的電腦和手機(jī)深寥,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,426評論 3 395
  • 文/潘曉璐 我一進(jìn)店門攘乒,熙熙樓的掌柜王于貴愁眉苦臉地迎上來贤牛,“玉大人,你說我怎么就攤上這事则酝⊙臭ぃ” “怎么了?”我有些...
    開封第一講書人閱讀 165,417評論 0 356
  • 文/不壞的土叔 我叫張陵沽讹,是天一觀的道長般卑。 經(jīng)常有香客問我,道長爽雄,這世上最難降的妖魔是什么蝠检? 我笑而不...
    開封第一講書人閱讀 58,868評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮挚瘟,結(jié)果婚禮上叹谁,老公的妹妹穿的比我還像新娘。我一直安慰自己乘盖,他們只是感情好焰檩,可當(dāng)我...
    茶點故事閱讀 67,892評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著订框,像睡著了一般析苫。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上穿扳,一...
    開封第一講書人閱讀 51,692評論 1 305
  • 那天衩侥,我揣著相機(jī)與錄音,去河邊找鬼矛物。 笑死茫死,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的泽谨。 我是一名探鬼主播璧榄,決...
    沈念sama閱讀 40,416評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼吧雹!你這毒婦竟也來了骨杂?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,326評論 0 276
  • 序言:老撾萬榮一對情侶失蹤雄卷,失蹤者是張志新(化名)和其女友劉穎搓蚪,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體丁鹉,經(jīng)...
    沈念sama閱讀 45,782評論 1 316
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡妒潭,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,957評論 3 337
  • 正文 我和宋清朗相戀三年悴能,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片雳灾。...
    茶點故事閱讀 40,102評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡漠酿,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出谎亩,到底是詐尸還是另有隱情炒嘲,我是刑警寧澤,帶...
    沈念sama閱讀 35,790評論 5 346
  • 正文 年R本政府宣布匈庭,位于F島的核電站夫凸,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏阱持。R本人自食惡果不足惜夭拌,卻給世界環(huán)境...
    茶點故事閱讀 41,442評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望衷咽。 院中可真熱鬧鸽扁,春花似錦、人聲如沸兵罢。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,996評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽卖词。三九已至巩那,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間此蜈,已是汗流浹背即横。 一陣腳步聲響...
    開封第一講書人閱讀 33,113評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留裆赵,地道東北人东囚。 一個月前我還...
    沈念sama閱讀 48,332評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像战授,于是被迫代替她去往敵國和親页藻。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,044評論 2 355

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