substr和substring有哪些區(qū)別?
英語(yǔ)中也有很多詞看起來(lái)意思一樣但是實(shí)際上卻有很大的卻別,所以我們要認(rèn)真對(duì)待每一個(gè)不一樣的詞語(yǔ)。
js有2個(gè)截取字符串的函數(shù),其定義如下:
substr(start,length)
substring(start,end)
substr是從起始點(diǎn)截取某個(gè)長(zhǎng)度的字符串
而substring是截取2個(gè)位置來(lái)源:之間的字符串
用了這么久js,今天才算明白如何截取字符串,以前都稀里糊涂的用,沒(méi)注意到有2個(gè)函數(shù)
昨天晚上在寫(xiě)一個(gè)js的時(shí)候,本來(lái)我是要用substring的結(jié)果,在ultraedit的提示功能下
我也沒(méi)有看就按了enter,最后運(yùn)行的時(shí)候發(fā)現(xiàn)和我設(shè)想的有差別。一看代碼發(fā)現(xiàn)我把substring
給寫(xiě)成了substr了,所以才會(huì)出錯(cuò)的!其實(shí)他們的區(qū)別也很見(jiàn)簡(jiǎn)單
string.substr(n1,n2) 這個(gè)就是我們常用的從指定的位置(n1)截取指定長(zhǎng)度(n2)的字符串;
string.substring(n1,n2) 這個(gè)就是我們常用的從考試大論壇指定的位置(n1)到指定的位置(n2)的字符串;
舉個(gè)例子:
alert("123456789".substr(2,5)) 它顯示的是 "34567"
alert("123456789".substring(2,5)) 則顯示的為 "345"
string.substr(n1,n2) 這個(gè)就是我們常用的從指定的位置(n1)截取指定長(zhǎng)度(n2)的字符串;
string.substring(n1,n2) 這個(gè)就有點(diǎn)特別了,它是先從n1,n2里找出一個(gè)較小的值,然后從字符串的開(kāi)始位置算起,截取較小值位置和較大值位置之間的字符串,截取出來(lái)的字符串的長(zhǎng)度為較大值與較小值之間的差。