JS字符串操作—slice(),substring(),substr()

slice()

1.当slice(a),只有一个参数时,表示:a为起始坐标,截取到最后

var str ="hello , world!";  

console.log(str.slice(8));

结果:world!

2.当slice(a,b),有两个参数时,a-起始位置,b-结束的下一个位置

var str = "hello , world!";

console.log(str.slice(2,5));

结果:llo

3.当slice(a,b),当参数<0时,参数 = 参数+str的长度,更改为正数,如果a>b,则返回空

var str = "hello , world!";

console.log(str.slice(-1,5));

结果:“空”

str的lenth = 14,所以a = -1 + 14 = 13,所以为str.slice(13,5),因为13>5,所以返回‘空’

var str = "hello , world!";

console.log(str.slice(-13,5));

结果:ello

str的length = 14,所以a = -13+14 = 1,所以str.slice(1,5),返回ello

substring(a,b)

1.当substring(a)只有一个参数;substring(a,b)有两个参数 且 参数>0,a<b时,用法与slice一样

2.当substring(a,b),以参数小的-起始位置,参数大的-结束的下一个位置

var str = "hello , world!";

console.log(str.substring(9,4));

结果:o , w

这里a>b,9-结束的下一个位置,4-起始位置

3.当substring(a,b),当参数<0时,参数 = 0

var str = "hello , world!";

console.log(str.substring(-1,5));

结果:hello

因为-1<0,所以a = 0,所以str.substring(0,5)

substr(a,b)

1. substr(a,b),a-起始位置,b-截取的长度,当a<0时,a表示从字符串末尾开始;当a>b时,返回‘空’

var str = "hello , world!";

console.log(str.substr(-2,1));

结果:d

-2表示从str的倒数第二个字符串开始,截取一个字符串,所以结果为d

具体问题:

var str = " '\nid 1 name face \r\n' "    (1为编号不确定位数,face为名称不确定位数)

1. 问:怎么把id 1 name face从str中截取出来 ?

结果:id 1 name face

2. 问:怎么把id 1 name face转化为对象 ?

结果:


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容