Slice():
/*
str.slice(begin,end)返回的是截取的字符串
返回的字符串区间:从begin开始,到end-1位结束
如果end索引值小于begin,返回空字符串
begin超出了length,返回空字符串
如果begin = end,返回空字符串
- begin
截取的起始位置,如果不传值,默认为0
可以是负数,则从倒数n位进行截取
如果当前的负数小于-length,那么起始值被设为0
- end
截取的结束位置,默认为length
如果超过了length,默认也是length
可以是负数,超过-length,也是设置为0
*/
let str = "也是醉了";
console.log(str.slice(2)); //醉了
console.log(str.slice(1,2));//是
console.log(str.slice(-1));//了
console.log(str.slice(-15));//也是醉了
console.log(str.slice(1,-20));//空
console.log(str.slice(30,20));//空
console.log(str.slice(2,2));//空
Substr():
/*
str.substr(start,[length])
-截取从start位置开始的字符串,返回新的字符串,不会覆盖原有字符串
--start
截取的起始位置,可以是负数,
如果是负数,则从右边到左边第length + start结束
如果起始位置的值太大,则默认为0
--length
截取字符的个数,如果不写则截取length个
如果超出了length,则默认到字符串结尾的位置
如果是一个负数,则返回空字符串
*/
let str = "kaikeba";
console.log(str.substr(2));//ikeba
console.log(str.substr(-2,2));//ba
console.log(str.substr(10,2));//空
console.log(str.substr(2,10));//ikeba
console.log(str.substr(2,-10));//空
Substring():
/*
str.substring(begin,end)
返回截取的字符串
--begin
截取的起始位置,默认为0,如果begin < 0,则被设置为0
--end
截取的结束位置,默认为length
如果这个值超过length,默认为length
如果end < 0,默认为0
截取的时候包含begin,而不包含end
如果begin > end,此时将begin和end值进行调换
begin超过了length,返回空字符串
如果begin = end,返回空字符串
*/
let str = "kaikeba";
console.log(str.substring(2));//ikeba
console.log(str.substring());//kaikeba
console.log(str.substring(-1));//kaikeba
console.log(str.substring(1,10));//aikeba
console.log(str.substring(1,-10));//k
console.log(str.substring(15));//空
console.log(str.substring(1,1));//空
网友评论