js中substr和substring都是截取字符串中子串,非常相近默赂,可以有一個(gè)或兩個(gè)參數(shù)钧排。
語法:substr(start [,length]) 第一個(gè)字符的索引是0前计,start必選 length可選
substring(start [, end]) 第一個(gè)字符的索引是0胞谭,start必選 end可選
相同點(diǎn):當(dāng)有一個(gè)參數(shù)時(shí),兩者的功能是一樣的男杈,返回從start指定的位置直到字符串結(jié)束的子串
var str = "hello Tony";
str.substr(6); //Tony
str.substring(6); //Tony
不同點(diǎn):有兩個(gè)參數(shù)時(shí)
(1)substr(start,length) 返回從start位置開始length長(zhǎng)度的子串
“goodboy”.substr(1,6); //oodboy
【注】當(dāng)length為0或者負(fù)數(shù)丈屹,返回空字符串
(2)substring(start,end) 返回從start位置開始到end位置的子串(不包含end)
“goodboy”.substring(1,6); //oodbo
【注】:
(1)substring 方法使用 start 和 end 兩者中的較小值作為子字符串的起始點(diǎn)
(2)start 或 end 為 NaN 或者負(fù)數(shù),那么將其替換為0