第二節(jié) 字符串的使用

字符串使用

1.charAt

作用:返回指定索引位置的字符
示例:輸出索引位置為1的字符

var str1 = "12AB7pnA8A5浑槽!"
document.write(str1.charAt(1)) // 輸出為2

2.charCodeAt()

作用:指定索引位置字符的 Unicode 值

var str1 = "Abc158中"
document.write(str1.charCodeAt(0)) // 輸出為65
document.write(str1.charCodeAt(5)) // 輸出為56
document.write(str1.charCodeAt(6)) // 輸出為NaN

3.concat()

作用:連接兩個或多個字符串畸悬,返回連接后的字符串

var str1 = 'Hello'
var str2 = 'World'
var str3 = 'My God'
document.write(str1.concat(str2)) // 輸出為HelloWorld
document.write(str1.concat(str2).concat(str3))// 輸出為HelloWorldMy God</pre>

4.fromCharCode()

作用:將 Unicode 轉(zhuǎn)換為字符串

var n = String.fromCharCode(65);
document.write(n)  // 輸出為A</pre>

5.indexOf()

作用: 返回字符串中檢索指定字符第一次出現(xiàn)的位置

var str1 = "12AB7pnA8A5顽腾!"
// 第一次出現(xiàn)A的位置
document.write(str1.indexOf('A')) // 輸出為2</pre>

6.lastIndexOf()

作用:返回字符串中檢索指定字符最后一次出現(xiàn)的位置

var str1 = "12AB7pnA8A5际乘!"
// 最后一次出現(xiàn)A的位置
document.write(str1.lastIndexOf('A')) // 輸出為9</pre>

7.localeCompare()

作用:用本地特定的順序來比較兩個字符串

var name1 = "王五"
var name2 = "阿笨"
?
// a在w之前 所以為1
document.write( name1.localeCompare(name2,'zh')) // 輸出為1
// w在a之后 所以為-1
document.write( name2.localeCompare(name1,'zh')) // 輸出為-1</pre>

8.match()

作用:找到一個或多個正則表達(dá)式的匹配

var str1 = "12AB7pnA8A5!"
document.write('找到一個或多個正則表達(dá)式的匹配:' + str1.match('A8') + "</br>")
document.write('找到一個或多個正則表達(dá)式的匹配:' + str1.match('A9') + "</br>")
document.write('找到一個或多個正則表達(dá)式的匹配:' + str1.match('A5刁标!'))
// 輸出
找到一個或多個正則表達(dá)式的匹配:A8
找到一個或多個正則表達(dá)式的匹配:null // 找不到即返回null
找到一個或多個正則表達(dá)式的匹配:A5颠通!</pre>

9.replace()

作用:替換與正則表達(dá)式匹配的子串

var str2 = "你好"
document.write('替換與正則表達(dá)式匹配的子串:' + str2.replace("你好","改變")) // 改變
str2 = str2.replace("你好","改變")
document.write('將你好替換為改變后的字符串:' + str2) // 改變</pre>

10.search()

作用:檢索與正則表達(dá)式相匹配的值

// 匹配到值為1,匹配不到值為-1
var name1 = "王五"
document.write("檢索與正則表達(dá)式相匹配的值:" + name1.search("五"))
document.write('檢索與正則表達(dá)式相匹配的值:' + name1.search('1'))</pre>

11.slice()

作用:提取字符串的片斷膀懈,并在新的字符串中返回被提取的部分

var str1 = "12AB7pnA8A5顿锰!"
// 提取字符串的片段,并在新的字符串返回被提取的部分
// 截取的是第0個字符到第五個字符的子串
document.write("截取部分字符串:" + str1.slice(0,5) + "</br>") // 12AB7</pre>

12.split()

作用:把字符串分割為子字符串?dāng)?shù)組

// 把字符串分隔為子字符串?dāng)?shù)組
 document.write("把字符串分隔為子字符串?dāng)?shù)組: "+ longString.split() + "</br>")// what do you want to do?
 document.write("把字符串分隔為子字符串?dāng)?shù)組: "+ longString.split(' ') + "</br>")what,do,you,want,to,do?
 this.arr = longString.split(' ')
 for(var i = 0; i < this.arr.length; i ++){
 document.write(this.arr[i] + "</br>")
/* 
   what
   do
   you 
   want 
   to 
   do 
   ?
*/
 }

輸出如下:</pre>

13.substr()

substr(索引,長度)
作用:從起始索引號提取字符串中指定書目的字符
substr截取從第幾個元素開始启搂,截取的長度
substr 當(dāng)length為0或者負(fù)數(shù)硼控,返回空字符串

var str1 = "12AB7pnA8A5!"
document.write("截取從索引0的位置開始長度為2的子串" +  str1.substr(0,2) ) // 12
document.write("截取從索引0的位置開始長度為2的子串" +  str1.substr(0,-1)) // 空</pre>

14. substring()

substring(start,end)
提取字符串兩個指定的索引號之間的字符
substring 方法使用 start 和 end 兩者中的較小值作為子字符串的起始點
++start 或 end 為 NaN 或者負(fù)數(shù)胳赌,那么將其替換為0

document.write("提取字符串0到3索引之間的字符" + str1.substring(0,3)) // 12A
document.write("提取字符串0到3索引之間的字符" + str1.substring(3,5)) // B7
document.write("提取字符串0到3索引之間的字符" + str1.substring(5,3)) // B7</pre>

15 toLocaleLowerCase()

toLocaleUpperCase()

var engString = 'aeeeRO'
// 大寫轉(zhuǎn)小寫
document.write('aeeeRO大寫轉(zhuǎn)小寫' + engString.toLocaleLowerCase()) // aeeero
// 小寫轉(zhuǎn)大寫
document.write('aeeeRO小寫轉(zhuǎn)大寫' + engString.toLocaleUpperCase() ) // AEEERO

16.toString()

var count = 10;
document.write(count.toString() + typeof(count.toString()));    // 輸出 '10'
document.write((17).toString() + "</br>");     // 輸出 '17'
document.write((17.2).toString() + "</br>");   // 輸出 '17.2'
?
var x = 6;
document.write(x.toString(2) + "</br>") ;       // 輸出 '110'
document.write((254).toString(16) + "</br>");  // 輸出 'fe'
document.write((-10).toString(2) + "</br>");   // 輸出 '-1010'
document.write((-0xff).toString(2) + "</br>"); // 輸出 '-11111111'</pre>

var fruits = ["Banana", "Orange", "Apple", "Mango"];
// fruits.valueOf()與 fruits返回值一樣牢撼。
// valueOf() 方法返回 Array 對象的原始值。
// 該原始值由 Array 對象派生的所有對象繼承疑苫。
// valueOf() 方法通常由 JavaScript 在后臺自動調(diào)用熏版,并不顯式地出現(xiàn)在代碼中。
// 注意: valueOf() 方法不會改變原數(shù)組捍掺。
document.write(fruits + "</br>")
document.write(fruits.valueOf())</pre>

17.toUpperCase()

toLowerCase()

作用:字符串的大小寫轉(zhuǎn)換

var caseString = "fffrrtTIP"
// 字符串轉(zhuǎn)大寫
document.write(caseString.toUpperCase() + "</br>") // FFFRRTTIP
// 字符串轉(zhuǎn)小寫
document.write(caseString.toLowerCase() + "</br>") // fffrrttip</pre>

18.tirm()

作用:移除字符串首尾空白

var trimString = "  123ABC "
document.write(trimString + "</br>")   //123ABC
document.write(trimString.trim() + "</br>")  //123ABC</pre>

19.valueOf()

作用:返回某個字符串對象的原始值

var fruits = ["Banana", "Orange", "Apple", "Mango"];
// fruits.valueOf()與 fruits返回值一樣撼短。
// valueOf() 方法返回 Array 對象的原始值。
// 該原始值由 Array 對象派生的所有對象繼承挺勿。
// valueOf() 方法通常由 JavaScript 在后臺自動調(diào)用曲横,并不顯式地出現(xiàn)在代碼中。
// 注意: valueOf() 方法不會改變原數(shù)組不瓶。
document.write(fruits + "</br>") // Banana,Orange,Apple,Mango
document.write(fruits.valueOf()) // Banana,Orange,Apple,Mango</pre>

字符串方法

描述 方法
返回指定索引位置的字符 charAt()
返回指定索引位置字符的 Unicode 值 charCodeAt()
連接兩個或多個字符串禾嫉,返回連接后的字符串 concat()
將 Unicode 轉(zhuǎn)換為字符串 fromCharCode()
返回字符串中檢索指定字符第一次出現(xiàn)的位置 indexOf()
返回字符串中檢索指定字符最后一次出現(xiàn)的位置 lastIndexOf()
用本地特定的順序來比較兩個字符串 localeCompare()
找到一個或多個正則表達(dá)式的匹配 match()
替換與正則表達(dá)式匹配的子串 replace()
檢索與正則表達(dá)式相匹配的值 search()
提取字符串的片斷,并在新的字符串中返回被提取的部分 slice()
把字符串分割為子字符串?dāng)?shù)組 split()
從起始索引號提取字符串中指定數(shù)目的字符 substr()
提取字符串中兩個指定的索引號之間的字符 substring()
根據(jù)主機(jī)的語言環(huán)境把字符串轉(zhuǎn)換為小寫蚊丐,只有幾種語言(如土耳其語)具有地方特有的大小寫映射 toLocaleLowerCase()
根據(jù)主機(jī)的語言環(huán)境把字符串轉(zhuǎn)換為大寫熙参,只有幾種語言(如土耳其語)具有地方特有的大小寫映射 toLocaleUpperCase()
把字符串轉(zhuǎn)換為小寫 toLowerCase()
返回字符串對象值 toString()
把字符串轉(zhuǎn)換為大寫 toUpperCase()
移除字符串首尾空白 trim()
返回某個字符串對象的原始值 valueOf()
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市麦备,隨后出現(xiàn)的幾起案子尊惰,更是在濱河造成了極大的恐慌讲竿,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件弄屡,死亡現(xiàn)場離奇詭異,居然都是意外死亡鞋诗,警方通過查閱死者的電腦和手機(jī)膀捷,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來削彬,“玉大人全庸,你說我怎么就攤上這事∪谕矗” “怎么了壶笼?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長雁刷。 經(jīng)常有香客問我覆劈,道長,這世上最難降的妖魔是什么沛励? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任责语,我火速辦了婚禮,結(jié)果婚禮上目派,老公的妹妹穿的比我還像新娘坤候。我一直安慰自己,他們只是感情好企蹭,可當(dāng)我...
    茶點故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布白筹。 她就那樣靜靜地躺著,像睡著了一般谅摄。 火紅的嫁衣襯著肌膚如雪徒河。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天螟凭,我揣著相機(jī)與錄音虚青,去河邊找鬼。 笑死螺男,一個胖子當(dāng)著我的面吹牛棒厘,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播下隧,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼奢人,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了淆院?” 一聲冷哼從身側(cè)響起何乎,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后支救,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體抢野,經(jīng)...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年各墨,在試婚紗的時候發(fā)現(xiàn)自己被綠了指孤。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,137評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡贬堵,死狀恐怖恃轩,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情黎做,我是刑警寧澤叉跛,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站蒸殿,受9級特大地震影響筷厘,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜伟桅,卻給世界環(huán)境...
    茶點故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一敞掘、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧楣铁,春花似錦玖雁、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至溃列,卻和暖如春劲厌,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背听隐。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工补鼻, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人雅任。 一個月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓风范,卻偏偏與公主長得像,于是被迫代替她去往敵國和親沪么。 傳聞我的和親對象是個殘疾皇子硼婿,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,086評論 2 355

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