slice VS substring VS substr

Syntax: string.slice(start, stop); 
Syntax: string.substring(start, stop); 
返回一个字符串,左包含,右不包含 
Syntax:String.substr(start, num); 
返回字符串,包含start开始,num为字符数

var x = 'abcde';
var slice = x.slice(1,4); //"bcd"
var substring= x.substring(1,4); //"bcd"
var substr= x.substr(2,3); //"cde"
  • 1
  • 2
  • 3
  • 4

slice VS substring

相同:

  • 1.如果start == stop,return一个空字符串
  • 2.stop如果被省略,则直接扫至字符串尾
  • 3.如果start或stop大于了字符串长度,则会被替换成字符串长度

不同: 
substing(): 
- 1.如果start > stop,则会交换这两个参数 
- 2.如果start or stop是负数或NaN,会把它当成0对待 
slice(): 
- 1.如果start > stop,不会交换这两个参数,返回空字符串”” 
- 2.如果start,or stop是负数,且绝对值小于字符串长度,则开头\结尾是start\stop+字符串长度 
- 3.如果start or stop是负数,且绝对值大于字符串长度,则当作0处理

猜你喜欢

转载自blog.csdn.net/lh95lbw/article/details/80728259