js 中substr,substring,slice区别

一,作用

  它们都是基于原字符串创建新字符串的方法,通俗点就是用来截取字符串。

二,相同点

  都接收一到二个参数。

  当接收一个参数是,都表示截取从当前下标,截取字符串,知道字符串的最后一个字符。

var str = 'hello world';
console.log(str.slice(3),str.substr(3),str.substring(3)); //'lo world','lo world','lo world'

三,不同点

  1,当接收二个参数时,第一个参数都表示当前的下标,slice和substring的第二个参数表示截取的结束下标,而substr表示的是需要截取的字符串的位数。

console.log(str.slice(3,5),str.substr(3,5),str.substring(3,5)); //'lo','lo wo','lo'

  2,当传入的是负数时

    slice()会把当前的负值加上字符串的长度。如slice(-3),相当于slice(8)。

    substring()会把所有的负值转化为零。

    substr()第一个负值负值会把当前的负值加上字符串的长度,第二个负值会转化为零(截取的个数不能为负)。

猜你喜欢

转载自www.cnblogs.com/mychz/p/9890086.html