JavaScript String slice() 方法
定义和用法
slice()
方法提取字符串的一部分。
slice()
方法以新字符串的形式返回提取的部分,不会更改原始字符串。
start 和 end 参数规定要提取的字符串部分。
第一个位置是 0,第二个是 1,...
负数从字符串的末尾来选取。
另请参阅:
实例
例子 1
裁切前 5 个位置:
let text = "Hello world!"; let result = text.slice(0, 5);
例子 2
从位置 3 到末尾:
let result = text.slice(3);
例子 3
从位置 3 到 8:
let result = text.slice(3, 8);
例子 4
仅第一个字符:
let result = text.slice(0, 1);
例子 5
仅最后一个字符:
let result = text.slice(-1);
例子 6
整个字符串:
let result = text.slice(0);
语法
string.slice(start, end)
参数
参数 | 描述 |
---|---|
start |
必需。起始位置。 第一个字符是 0。 |
end |
可选。结束位置(最多,但不包括)。 默认为字符串长度。 |
返回值
类型 | 描述 |
---|---|
字符串 | 字符串被提取的部分。 |
技术细节
参数 start
该参数是要抽取的片段的起始下标。如果是负数,则该参数指定从字符串尾部开始算起的位置。即,-1 指字符串中的最后一个字符,-2 指倒数第二个字符,以此类推。
参数 end
该参数是紧接着要抽取的片段的结尾下标。如果没有指定这一参数,那么要抽取的子串包括 start 到原字符串结尾的字符串。如果该参数是负数,则它指定从字符串尾部开始算起的位置。
返回值
一个新的字符串。包括字符串 string 从 start 开始(包括 start)到 end 结束(不包括 end)为止的所有字符。
说明
slice() 方法返回含有字符串 string 的片段的字符串,或返回它的一个子串。但是该方法不会修改 string。
String 对象的方法 slice()
、substring()
和 substr()
(不建议使用)都可返回字符串的指定部分。slice()
比 substring()
要灵活一些,因为它允许使用负数作为参数。slice()
与 substr()
有所不同,因为它用两个字符的位置来指定子串,而 substr()
则用字符位置和长度来指定子串。
还要注意的是,String.slice()
与 Array.slice()
相似。
浏览器支持
slice()
是 ECMAScript1 (ES1) 特性。
所有浏览器都完全支持 ES1 (JavaScript 1997):
Chrome | IE | Edge | Firefox | Safari | Opera |
---|---|---|---|---|---|
Chrome | IE | Edge | Firefox | Safari | Opera |
支持 | 支持 | 支持 | 支持 | 支持 | 支持 |