20個常用的JavaScript字符串方法

摘要: 玩轉(zhuǎn)JS字符串。

Fundebug經(jīng)授權轉(zhuǎn)載隅茎,版權歸原作者所有。

本文主要介紹一些最常用的JS字符串函數(shù)。

1. charAt(x)

charAt(x)返回字符串中x位置的字符铜秆,下標從 0 開始奢米。

    //charAt(x)
    var myString = 'jQuery FTW!!!';
    console.log(myString.charAt(7));
    //output: F

2. charCodeAt(x)

`charCodeAt(x)`返回字符串中`x`位置處字符的`unicode`值抓韩。

    //charAt(position)
    var message="jquery4u"
    //alert "113"
    alert(message.charAt(1)

3. concat(v1,v2..)

concat() 方法用于連接兩個或多個字符串,此方法不改變現(xiàn)有的字符串鬓长,返回拼接后的新的字符串谒拴。

    //concat(v1, v2,..)
    var message="Sam"
    var final=message.concat(" is a"," hopeless romantic.")
    //alerts "Sam is a hopeless romantic."
    alert(final)

4. fromCharcode(c1,c2)

fromCharcode(c1,c2)轉(zhuǎn)換一組Unicode值轉(zhuǎn)換為字符。

    //fromCharCode(c1, c2,...)
    console.log(String.fromCharCode(97,98,99,120,121,122))
    //output: abcxyz
    console.log(String.fromCharCode(72,69,76,76,79))
    //output: HELLO

5. indexOf(substr, [start])

indexOf方法搜索并(如果找到)返回字符串中搜索到的字符或子字符串的索引涉波。如果沒有找到英上,則返回-1Start是一個可選參數(shù)啤覆,指定字符串中開始搜索的位置苍日,默認值為0

    //indexOf(char/substring)
    var sentence="Hi, my name is Sam!"
    if (sentence.indexOf("Sam")!=-1)
    alert("Sam is in there!")

6. lastIndexOf(substr, [start])

lastIndexOf() 方法返回指定文本在字符串中最后一次出現(xiàn)的索引, 如果未找到窗声,則返回-1相恃。 “Start”是一個可選參數(shù),指定字符串中開始搜索的位置, 默認值為string.length-1笨觅。

    //lastIndexOf(substr, [start])
    var myString = 'javascript rox';
    console.log(myString.lastIndexOf('r'));
    //output: 11

7. match(regexp)

根據(jù)正則表達式在字符串中搜索匹配項拦耐。如果沒有找到匹配項,則返回一個信息數(shù)組或null见剩。

    //match(regexp) //select integers only
    var intRegex = /[0-9 -()+]+$/;  
     
    var myNumber = '999';
    var myInt = myNumber.match(intRegex);
    console.log(isInt);
    //output: 999
     
    var myString = '999 JS Coders';
    var myInt = myString.match(intRegex);
    console.log(isInt);
    //output: null

8. replace(regexp/substr, replacetext)

replace() 方法用于在字符串中用一些字符替換另一些字符杀糯,或替換一個與正則表達式匹配的子串。

    //replace(substr, replacetext)
    var myString = '999 JavaScript Coders';
    console.log(myString.replace(/JavaScript/i, "jQuery"));
    //output: 999 jQuery Coders
     
    //replace(regexp, replacetext)
    var myString = '999 JavaScript Coders';
    console.log(myString.replace(new RegExp( "999", "gi" ), "The"));
    //output: The JavaScript Coders

9. search(regexp)

search() 方法用于檢索字符串中指定的子字符串苍苞,或檢索與正則表達式相匹配的子字符串固翰,如果找到,返回與 regexp 相匹配的子串的起始位置柒啤,否則返回 -1倦挂。

    //search(regexp)
    var intRegex = /[0-9 -()+]+$/;  
     
    var myNumber = '999';
    var isInt = myNumber.search(intRegex);
    console.log(isInt);
    //output: 0

10. slice(start, [end])

slice() 方法可提取字符串的某個部分,返回一個新的字符串担巩。包括字符串從 start 開始(包括 start)到 end 結(jié)束(不包括 end)為止的所有字符方援。

    //slice(start, end)
    var text="excellent"
    text.slice(0,4) //returns "exce"
    text.slice(2,4) //returns "ce"

11. split(delimiter, [limit])

split() 方法用于把一個字符串分割成字符串數(shù)組,返回一個字符串數(shù)組返回的數(shù)組中的字串不包括 delimiter自身涛癌。 可選的“limit”是一個整數(shù)犯戏,允許各位指定要返回的最大數(shù)組的元素個數(shù)送火。

12. substr(start, [length])

substr() 方法可在字符串中抽取從 start 下標開始的指定數(shù)目的字符。返回一個新的字符串先匪,包含從 start(包括 start 所指的字符) 處開始的 length 個字符种吸。如果沒有指定 length,那么返回的字符串包含從 start 到該字符串的結(jié)尾的字符呀非。

    //substring(from, to)
    var text="excellent"
    text.substring(0,4) //returns "exce"
    text.substring(2,4) //returns "ce"

13. substring(from, [to])

substring() 方法用于提取字符串中介于兩個指定下標之間的字符坚俗,方返回的子串包括 start 處的字符,但不包括 stop 處的字符岸裙,to 可選猖败,如果省略該參數(shù),那么返回的子串會一直到字符串的結(jié)尾降允。

    //substring(from, [to])
    var myString = 'javascript rox';
    myString = myString.substring(0,10);
    console.log(myString)
    //output: javascript

14. toLowerCase()

toLowerCase() 方法用于把字符串轉(zhuǎn)換為小寫恩闻。

    //toLowerCase()
    var myString = 'JAVASCRIPT ROX';
    myString = myString.toLowerCase();
    console.log(myString)
    //output: javascript rox

15. toUpperCase()

toUpperCase() 方法用于把字符串轉(zhuǎn)換為大寫。

    //toUpperCase()
    var myString = 'javascript rox';
    myString = myString.toUpperCase();
    console.log(myString)
    //output: JAVASCRIPT ROX

16. includes()

includes() 方法用于檢查字符串是否包含指定的字符串或字符剧董。

    //includes()
    var mystring = "Hello, welcome to edureka";
    var n = mystring.includes("edureka");
    //output: True

17. endsWith()

endsWith()函數(shù)檢查字符串是否以指定的字符串或字符結(jié)束幢尚。

    //endsWith()
    var mystr = "List of javascript functions";
    var n = mystr.endsWith("functions");
    //output: True

18. repeat()

repeat() 構造并返回一個新字符串,該字符串包含被連接在一起的指定數(shù)量的字符串的副本翅楼。

    //repeat()
    var string = "Welcome to Edureka";
    string.repeat(2);
    //output: Welcome to Edureka Welcome to Edureka

19. valueOf()

valueOf() 方法返回一個String對象的原始值(primitive value)尉剩,該值等同于String.prototype.toString()

    //valueOf()
    var mystr = "Hello World!";
    var res = mystr.valueOf();
    //output: Hello World!

20. trim()

trim() 方法會從一個字符串的兩端刪除空白字符犁嗅。在這個上下文中的空白字符是所有的空白字符 (space, tab, no-break space 等) 以及所有行終止符字符(如 LF边涕,CR)

    //trim()
    var str = "     Hello Edureka!     ";
    alert(str.trim());

代碼部署后可能存在的BUG沒法實時知道,事后為了解決這些BUG褂微,花了大量的時間進行l(wèi)og 調(diào)試功蜓,這邊順便給大家推薦一個好用的BUG監(jiān)控工具 Fundebug

關于Fundebug

Fundebug專注于JavaScript宠蚂、微信小程序式撼、微信小游戲、支付寶小程序求厕、React Native著隆、Node.js和Java線上應用實時BUG監(jiān)控。 自從2016年雙十一正式上線呀癣,F(xiàn)undebug累計處理了20億+錯誤事件美浦,付費客戶有陽光保險、核桃編程项栏、荔枝FM浦辨、掌門1對1、微脈沼沈、青團社等眾多品牌企業(yè)流酬。歡迎大家免費試用币厕!

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市芽腾,隨后出現(xiàn)的幾起案子旦装,更是在濱河造成了極大的恐慌,老刑警劉巖摊滔,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件阴绢,死亡現(xiàn)場離奇詭異,居然都是意外死亡惭载,警方通過查閱死者的電腦和手機旱函,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來描滔,“玉大人,你說我怎么就攤上這事踪古『ぃ” “怎么了?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵伏穆,是天一觀的道長拘泞。 經(jīng)常有香客問我,道長枕扫,這世上最難降的妖魔是什么陪腌? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮烟瞧,結(jié)果婚禮上诗鸭,老公的妹妹穿的比我還像新娘。我一直安慰自己参滴,他們只是感情好强岸,可當我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著砾赔,像睡著了一般蝌箍。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上暴心,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天妓盲,我揣著相機與錄音,去河邊找鬼专普。 笑死悯衬,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的脆诉。 我是一名探鬼主播甚亭,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼贷币,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了亏狰?” 一聲冷哼從身側(cè)響起役纹,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎暇唾,沒想到半個月后促脉,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡策州,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年瘸味,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片够挂。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡旁仿,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出孽糖,到底是詐尸還是另有隱情枯冈,我是刑警寧澤,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布办悟,位于F島的核電站尘奏,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏病蛉。R本人自食惡果不足惜炫加,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望铺然。 院中可真熱鬧俗孝,春花似錦、人聲如沸探熔。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽诀艰。三九已至柬甥,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間其垄,已是汗流浹背苛蒲。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留绿满,地道東北人臂外。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親漏健。 傳聞我的和親對象是個殘疾皇子嚎货,可洞房花燭夜當晚...
    茶點故事閱讀 44,864評論 2 354

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