javascript字符串單個字符訪問方法
訪問字符串的單個字符
獲取字符串的某一單個字符有兩種方法。
第一種是使用 charAt
方法
> 'hello'.charAt(1) 'e'
第二種是使用 類數(shù)組的下標(biāo)索引 方法
> 'hello'[1] 'e'
下面來具體說說每一種訪問方法。
charAt 方法
charAt()
方法返回字符串中指定位置的字符。
語法
str.charAt(index)
參數(shù)index: 0
到 字符串長度-1
的一個整數(shù)。
說明字符串中的字符從左向右索引,第一個字符的索引值為 0
,最后一個字符的索引值為 str.length - 1
。
如果指定的 index
值超出了該范圍,則返回一個空字符串
。
示例
> a = 'abcd' 'abcd' > a.charAt(4) // index超出范圍,返回一個空字符串 '' > a.charAt(0) 'a'
類數(shù)組的下標(biāo)索引方法
因為字符串有length
屬性,并有可索引的屬性0、1、2...
等,所以可視為一個類數(shù)組對象。
類數(shù)組的下標(biāo)索引方法 就是把字符串當(dāng)作一個類數(shù)組對象(ECMA5),其中的每個字符對應(yīng)一個數(shù)值索引。
語法
string[index]
注意,當(dāng)index
查出范圍時,返回undefined
.
示例
> a = 'abcd' 'abcd' > a[0] 'a' > a[1] 'b' > a[2] 'c' > a[3] 'd' > a[4] //index超出范圍,返回undefined. undefined
注意,使用這種類數(shù)組的下標(biāo)索引法,只可以訪問字符而不可以對其進行刪除或添加,因為對應(yīng)屬性并不是可讀或可寫的,畢竟類數(shù)組不是數(shù)組。
兩種方法的比較
相同點
- 都是獲取字符串某個位置的單個字符。
- 索引都從
0
開始。
不同點
使用charAt(index)
的方式,index
超出范圍的,會返回一個空的字符串
。
使用string[index]
的方式,index
超出范圍的,會返回undefined
。
可概括為兼容性問題。
charAt
是ES3
的方法,string[index]
是ES5
的方法。所以charAt(index)
兼容性強,在IE6~8下也能正常使用。string[index]
的方式在IE6~8下會返回 undefined
, 也就是IE6~8 不兼容此方法,只能用于IE8+。
用string[index]
還有一個不便之處,即不容易區(qū)分訪問的是數(shù)組元素還是字符串,而且有可能讓人誤以為是可寫的。
以上就是javascript字符串單個字符訪問方法的詳細(xì)內(nèi)容,更多關(guān)于javascript訪問單個字符的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
微信小程序 ecshop地址三級聯(lián)動實現(xiàn)實例代碼
這篇文章主要介紹了微信小程序 ecshop地址3級聯(lián)動實現(xiàn)實例代碼的相關(guān)資料,需要的朋友可以參考下2017-02-02微信小程序 數(shù)組中的push與concat的區(qū)別
這篇文章主要介紹了微信小程序 數(shù)組中的push與concat的區(qū)別的相關(guān)資料,需要的朋友可以參考下2017-01-01