javascript中string物件方法中的slice、substring、substr的區別聯絡

牛坤發表於2018-08-07

1、slice、substring、snustr均屬於String的物件方法,用於擷取或提取字串片段,三者均布破壞原先的字串,而是以新的字串返回被提取的部分。

<script>
 var str="0123456";
 var str1=str.slice(2,5);
 var str2=str.substring(2,5);
 var str3=str.substr(2,5);
 console.log(str);
 console.log(str1);
 console.log(str2);
 console.log(str3);

//輸出
//0123456
//234
//234
//23456

2、三者只有兩個引數,但第二個引數均可以省略,表示從起始位置到字串隨後,slice與substring的第一個引數是字元起始位置,第二個引數是字元結束位置,起始位置從0算起,  擷取的字串不包括結束位置的字元。

  slice的第一個引數的可以是負數,表示從字串最後一位開始算起,如-1表示最後一位,-2表示倒數第二位,第二個引數必須為正數。

  substring不可以兩個引數均不可以為負數。

  substr的第二個參數列示擷取字串的長度,不是字元位置。其第一個引數可以是負數,同樣是從後往前數。

相關文章