Open newPromise opened 5 years ago
在字符串的截取操作中, 存在三种方法可以用来截取字符串,例如: substring, slice 以及 subtr 这三种的用法是不同的
substring
slice
subtr
substr
let str = "hello"; str.substr(1, 2); // el str.substring(1, 2)// e str.slice(1, 2) // e
需要注意的一点是, 对于 substring 而言, 会将接收到的参数中的较小的一个参数作为开始截取字符串的位置 // 需要记住, 当参数都是正数的时候, 对于 substr 接收的参数分别是开始截取的位置和需要进行截取的字符串的长度
当上面的三种方法中接收到的参数仅仅只有一个的时候, 截取的是从开始位置都字符串末尾的字符串。
对于 slice 而言, 对于存在负数的参数, 会将相应位置的参数负数和字符串长度相加,如果相加之后的数值为正数的话, 会将正数作为参数 如果相加之后的数值为负数的时候, 则会将相应的参数变为0 例如:
str.slice(-1) // o str.slice(0, -2)// hel str.slice(-1, -6) // “ ”空字符串,相当于 str.slice(4, -1)
对于 substr 而言, 接收的第二个参数是要进行截取的字符串长度, 当传入的参数为负数的时候, 仅仅是将第一个参数(字符串进行截取的开始位置)转化为正数
str.substr(-3) // llo str.substr(-3, -1) // "" 对于第二个参数不会进行转换
对于 substring 而言, 会将存在负数的参数变为0
str.substring(-1, 2)// he str.substring(2, -3) // he
在字符串的截取操作中, 存在三种方法可以用来截取字符串,例如:
substring
,slice
以及subtr
这三种的用法是不同的substring
以及slice
用于截取字符串, 分别接受两个参数, 表示开始的截取字符串位置和结束的字符串位置, 对于substr
而言, 接收的参数分别是开始截取的字符串位置和需要进行截取的字符串长度 例如下面的例子:需要注意的一点是, 对于
substring
而言, 会将接收到的参数中的较小的一个参数作为开始截取字符串的位置 // 需要记住, 当参数都是正数的时候, 对于substr
接收的参数分别是开始截取的位置和需要进行截取的字符串的长度当上面的三种方法中接收到的参数仅仅只有一个的时候, 截取的是从开始位置都字符串末尾的字符串。
对于
slice
而言, 对于存在负数的参数, 会将相应位置的参数负数和字符串长度相加,如果相加之后的数值为正数的话, 会将正数作为参数 如果相加之后的数值为负数的时候, 则会将相应的参数变为0 例如:对于
substr
而言, 接收的第二个参数是要进行截取的字符串长度, 当传入的参数为负数的时候, 仅仅是将第一个参数(字符串进行截取的开始位置)转化为正数对于
substring
而言, 会将存在负数的参数变为0