字符串截取常见方法
字符串截取常用方法
不改变原字符串
substring()、 slice()、 substr()
- str.slice(start,end) 从start取起到end结束,不包括end,可以为负数 - start是必选参数,意思是从第start个字符开始截取到末尾。如果是负数,那么它规定从字符串尾部开始算起的位置。也就是说,-1 指最后一个字符,-2 指倒数第二个字符,以此类推。 - end是可选参数,从第start个字符开始截取到第end个字符。如果没有指定该参数,那么截取的字符串包含从 start 到结束的所有字符。如果这个参数是负数,那么它规定的是从数组尾部开始算起的字符。 - 1 
 2
 3
 4
 5
 6
 7- let str = "abcdefg"; 
 str.slice(3); //"defg"
 str.slice(3,5); //"de"
 str.slice(-2); //"fg"
 str.slice(2,-2); //"cde"
 str.slice(-4,-2); //"de"
 str.slice(-1,-2); //""
- str.substring(start, end) 从start取起到end结束,不包括end,为非负整数 - start是必选参数,必须是非负的整数。意思是从第start个字符开始截取到末尾。 
 end是可选参数,非负的整数。- 1 
 2
 3
 4- let str = "abcdefg"; 
 str.substring(3); //"defg"
 str.substring(3,5); // "de"
 str.substring(5,3); // "de" 如果 start 比 end 大,那么该方法在提取子串之前会先交换这两个参数。
- str.substr(start,length) 从start取起取length位,可以为负数(少使用) - start:必需,要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推 
 length:可选,在返回的子字符串中应包括的字符个数。- 1 
 2
 3
 4- let str = "abcdefg"; 
 str.substr(3); //"defg"
 str.substring(3,5); // "defg"
 str.substring(3,2); // "de"
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 钥零零の博客!
 评论




