字符串 | slice substr substring的区别
三个方法都是用来从字符串中提取子字符串的,因为是提取,三个方法都不改变原字符串
slice
语法
1 | str.slice(startIndex, [endIndex]) |
参数
startIndex
:从该索引开始endIndex
(可选):在该索引处结束提取字符串(不含),默认为字符串长度
返回值
返回提取出来的子字符串
substring
语法
1 | str.substring(startIndex, [endIndex]) |
参数
startIndex
:从该索引开始endIndex
(可选):在该索引处结束提取字符串(不含),默认为字符串长度
返回值
返回提取出来的子字符串
substr
语法
1 | str.substr(startIndex, [length]) |
参数
startIndex
:从该索引开始length
(可选):提取的字符数
返回值
返回提取出来的子字符串
区别
三者的主要区别在于面对0参数的处理上
slice
方法会将所有负值参数都使用负值+length
的方法进行处理substr
方法会将第一个负参数值使用负值+length
的方法进行处理,第二个负参数转为0substring
方法会将所有的负参数转为0