- substr和substring的索引值都是从 0 开始的,但是当传入的索引是负值的时候那么就要注意了
var str='abc,def';
str.substr(1) //bc,def
str.substring(1) //bc,def
//-----重点-------
str.substr(-1) // f
str.substring(-1) //abc,def
当substr中参数是 -1 的时候那么,索引就从倒数最后一为开始计数。 当substring中参数是负值的时候那么就相当于 substring(0) ==> 截取全部字符串,注意:只要substring 中有索引为负值,那么就自动把该索引看成0
- substr和substring两个参数的时候
var str='abc,def';
str.substr(2,4) //c,de
str.substring(2,4) //c,
- 这里注意的是substr是截取当前索引的后n位。sb:str.substr(2,4) 截取索引为 2 的后4位
- substring( 2 , 4 ) 指的是从索引为2,截取到索引为4 注意虽然说是到 4,但并不包括4
- 最重要的一点 substr 的区间是 [ 左闭,右闭 ] substring的区间是 [ 左闭 ,右开)
3.下面代码可以进行自我测试练习,同样重要,请耐心看完
substring 的索引值是“从小到大”
var str='abc,def'
str.substr(1,0) //不报错,输出空 当第二参数 <=0 的时候输出的值为 空
str.substring(2,0) //ab 这个等于 substring(0,2) 自动会把小的作为第一个索引值
str.substr(-3,3) //def -1为倒数最后一个,则-3就为d
str.substring(-3,3) //abc 等价于substring(0,3) 请参考 1.
版权声明:本文为weixin_44060930原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。