slice 方法
语法:
str.slice(start[, end])
start:提取开始的位置。如果是负数,表示从字符串末尾开始计算。例如,-1表示最后一个字符。end(可选) :提取结束的位置(不包含该位置)。如果省略,默认为字符串的长度。
示例:
let str = "Hello, World!";
console.log(str.slice(7)); // 输出: "World!" (从索引7开始到结束)
console.log(str.slice(0, 5)); // 输出: "Hello" (从0到4)
console.log(str.slice(-6)); // 输出: "World!" (从倒数第6个字符开始到结束)
console.log(str.slice(-6, -1)); // 输出: "World" (从倒数第6个到倒数第2个)
substring 方法
语法:
str.substring(start[, end])
start:提取开始的位置。如果大于字符串长度,将返回空字符串。end(可选) :提取结束的位置(不包含该位置)。如果省略,默认为字符串的长度。
示例:
let str = "Hello, World!";
console.log(str.substring(7)); // 输出: "World!" (从索引7开始到结束)
console.log(str.substring(0, 5)); // 输出: "Hello" (从0到4)
console.log(str.substring(7, 12)); // 输出: "World" (从7到11)
console.log(str.substring(12, 7)); // 输出: "World" (参数交换,返回从7到11)
总结
slice可以接受负数索引,并且仅用一个参数时,表示从该位置到字符串结束,如果start大于end,则会返回一个空字符串substring不支持负数索引,单个参数时也表示从该位置到字符串结束,但如果start大于end,则会自动交换start和end的值继续查找。