美文网首页
字符串的方法substr substring slice对比

字符串的方法substr substring slice对比

作者: 梦晓半夏_d68a | 来源:发表于2020-02-14 20:40 被阅读0次

slice(start,end)和substring(start,end)更像

他们两个的end都是原字符串的索引,意思为截取到end(不包括end)位置的字符

语法

一.slice() 的用法:

语法: stringObject.slice(start,end)

1.start 是开始下标的位置,如果是负数,他的原理就是(c.length + start) ,从这个位置开始计算

2.end (可选) 是结束的下标的位置

注意: 如果第一个数值比第二个数值大, 那么返回的就是 “”

记忆:slice(start,end)    参数为负,则+length; start>end,则为空

二.substring()的用法

语法: stringObject.substring(start,end)。

1. start代表的开始的位置,如果只有一个参数,那么就从开始的位置到结束的位置, 如果是负数的话,默认的处理机制是把他变成0,然后再进行操作

2. end 代表的是结束的位置,如果是负数的话,也会把他变成0然后进行操作.

注意: 如果end的数值比start的数值小,那么他们会进行交换一次,然后再得出结果

记忆:substring(start,end)    参数为负,则变0; start>end,则交换

三.substr()的用法

语法: stringObject.substr(start,length)。

1.start 是代表开始的位置,从该位置开始到字符结束的位置,如果该数字是负数,那么相当于是执行(c.length + start)

2. length (可选) 代表的是截图字符的长度,如果省略该参数,就从开始的位置到结束位置

注意: 如果length数值为负数,那么返回的结果就是 “”

记忆:substr(start,length)    start参数为负,则+length; end为负或0,则为空

对比

slice(start,end)           参数为负,则+length; start>end,则为空

substring(start,end)    参数为负,则变0; start>end,则交换

substr(start,length)     start参数为负,则+length; end为负或0,则为空

与substring()相比,slice()更灵活,可以接收负参数。

substr()可以代替slice()和substring()来使用,但是ECMAscript 没有对该方法进行标准化,因此尽量少使用该方法。

代码

let c = "little boy";

console.log(c.slice(1));    // "ittle boy"

console.log(c.slice(1, 5))  // "ittl"

console.log(c.slice(3, 2))  // ""

console.log(c.slice(-3))    // "boy"

console.log(c.slice(-3, 1)) // ""

console.log(c.slice(1, -3)) // "ittle "

let c = "little boy";

console.log(c.substr(1))      // "ittle boy"

console.log(c.substr(1, 5))  // "ittle"

console.log(c.substr(3, 2))  // "tl"

console.log(c.substr(-3))    // "boy"

console.log(c.substr(-3, 1))  // "b"

console.log(c.substr(1, -3))  // ""

let c = "little boy";

console.log(c.substring(-1))    // "little boy"

console.log(c.substring(1, 5))  // "ittl"

console.log(c.substring(3, 2))  // "t"

console.log(c.substring(-3))    // "little boy"

console.log(c.substring(-3, 1))  // "l"

console.log(c.substring(1, -3))  // "l"

相关文章

网友评论

      本文标题:字符串的方法substr substring slice对比

      本文链接:https://www.haomeiwen.com/subject/ktajfhtx.html