js中substr與substring區別

substrsubstring都是截取字符串中子串,很是相近,很是容易弄混,能夠有一個或兩個參數。spa

語法:string.substr(start,length) 第一個字符的索引是0,start必選 length可選code

   string.substring(start,length) 第一個字符的索引是0,start必選 end可選blog

相同點:當有一個參數時,二者的功能是同樣的,返回從start指定的位置直到字符串結束的子串索引

var str = "hello Tony"; str.substr(6);  //Tony
 str.substring(6); //Tony

不一樣點:有兩個參數時字符串

(1)substr(start,length) 返回從start位置開始length長度的子串string

「goodboy」.substr(1,6); //oodboy 

 

【注】當length爲0或者負數,返回空字符串。class

"goodboy".substr(1,0);   //""

 

 若是是負數,那麼該參數聲明從字符串的尾部開始算起的位置。也就是說,-1 指字符串中最後一個字符,-2 指倒數第二個字符,以此類推。語法

"goodboy".substr(-1)  // "y"

 

(2)substring(start,end) 返回從start位置開始到end位置的子串(不包含end)db

「goodboy」.substring(1,6);  //oodbo

注:ECMA 並無對 substr() 進行標準化,因此不建議使用 substr()di

相關文章
相關標籤/搜索