JavaScript String slice() 方法

定义和用法

slice() 方法提取字符串的一部分。

slice() 方法以新字符串的形式返回提取的部分,不会更改原始字符串。

startend 参数规定要提取的字符串部分。

第一个位置是 0,第二个是 1,...

负数从字符串的末尾来选取。

另请参阅:

split() 方法

substr() 方法

substring() 方法

实例

例子 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 到原字符串结尾的字符串。如果该参数是负数,则它指定从字符串尾部开始算起的位置。

返回值

一个新的字符串。包括字符串 stringstart 开始(包括 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
支持 支持 支持 支持 支持 支持

相关页面

JavaScript 字符串

JavaScript 字符串方法

JavaScript 字符串搜索