slice(start,end)和substring(start,end)都接收兩個參數(shù),表示從start開始截取,到end結(jié)束位置的前一位。返回截取的字符串。
若第二個參數(shù)大于第一個參數(shù),且都為正數(shù),則slice會返回空字符串,substring會判斷若第二個參數(shù)大于第一個參數(shù),則交換這兩個參數(shù)的位置,再進行截取字符串。
若參數(shù)中出現(xiàn)負(fù)數(shù),則substring會將負(fù)數(shù)轉(zhuǎn)為0,slice會將其作為倒數(shù)第幾位進行截取。
substr(start,len)接收的兩個參數(shù)表示從start位置開始,截取len個字符串,若出現(xiàn)負(fù)數(shù),start位置會從倒數(shù)開始,len會轉(zhuǎn)為0;
var str='1m2mgfdgfdgfgdggerererwe';
str.substr(3,3)//"mgf"
str.substr(3,-3)//""
str.substr(-3,3)//"rwe"
str.substring(3,4)//"m"
str.substring(3,-4)//"1m2"
str.substring(-3,-4)//""
str.substring(-3,4)//"1m2m"
str.slice(-3,4)//""
str.slice(3,6)//"mgf"
str.slice(6,3)//""
str.slice(3,-6)//"mgfdgfdgfgdgger"