1. subStr(start, length)
substr() 方法可在字符串中截取从start下标开始到指定length数目的字符
var str = "Hello world!";
console.log(str.substr(3, 5));
// lo wo
没有设置 length 时默认到末尾
var str = "Hello world!";
console.log(str.substr(3));
// lo world!
2. substring(start, end)
string.substring(start, end) 方法从 start 位置截取到 end 位置,end 可选
var str = "Hello world!";
console.log(str.substring(3, 8));
// lo wo
没有设置 end 时默认到末尾
var str = "Hello world!";
console.log(str.substring(3));
// lo world!
特点:
- 如果 start > stop ,start和stop将被交换
var str = "Hello world!";
console.log(str.substring(8, 3));
// lo wo
- 如果参数是负数或者不是数字,将会被0替换
var str = "Hello world!";
console.log(str.substring(-1, 8));
// Hello wo
3. slice(start, end)
slice(start,end) 方法用于提取字符串的某个部分(从参数 start 到 end 位置),并以新的字符串返回被提取的部分。类似 substring()。
var str = "Hello world!";
console.log(str.slice(3, 8));
// lo wo
没有设置 end 时默认到末尾
var str = "Hello world!";
console.log(str.slice(3));
// lo world!
特点:
- 如果 start > end 不会交换两者
var str = "Hello world!";
console.log(str.slice(8, 3));
// undefined
- 如果 start 小于0,则切割从字符串末尾往前数的第 start 个的字符开始(包括该位置的字符)
var str = "Hello world!";
console.log(str.slice(-2, -1));
// d
var str = "Hello world!";
console.log(str.slice(-2));
// d!
- 如果 end 小于0,则切割在从字符串末尾往前数的第 end 个字符结束(不包含该位置字符)
var str = "Hello world!";
console.log(str.slice(3, -2));
// lo worl