JavaScript:substring 与 slice 的核心区别
·
JavaScript:substring 与 slice 的核心区别
一、速览对比表
| 对比维度 | substring(start, end) | slice(start, end) |
|---|---|---|
| 负数索引 | 自动转为 0 | 从末尾倒数(-1 为最后一位) |
| start > end | 自动交换两者位置 | 不交换,直接返回空字符串 "" |
| 适用范围 | 仅限 String | 支持 String 和 Array |
| 省略 end | 截取至末尾 | 截取至末尾 |
二、代码验证(避坑必备)
const str = '012345';
// 1. 负数索引的区别
console.log(str.substring(-3, 4)); // '0123'(-3 被视为 0)
console.log(str.slice(-3, 4)); // '3' (-3 表示倒数第 3 位,即索引 3)
// 2. start > end 的区别
console.log(str.substring(4, 1)); // '123' (自动交换为 substring(1, 4))
console.log(str.slice(4, 1)); // '' (不交换,直接返回空)
更多推荐


所有评论(0)