MDN 链接: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/slice
W3C 链接: http://www.w3school.com.cn/jsref/jsref_slice_string.asp
其实就相当于把String看成一个字符数组,然后调用Array.prototype.slice()方法
定义和用法
slice() 方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。
语法
stringObject.slice(start,end)
参数
参数 | 描述 |
---|---|
start | 要抽取的片断的起始下标。如果是负数,则该参数规定的是从字符串的尾部开始算起的位置。也就是说,-1 指字符串的最后一个字符,-2 指倒数第二个字符,以此类推。 |
end | 紧接着要抽取的片段的结尾的下标。若未指定此参数,则要提取的子串包括 start 到原字符串结尾的字符串。如果该参数是负数,那么它规定的是从字符串的尾部开始算起的位置。 |
返回值
一个新的字符串。包括字符串 stringObject 从 start 开始(包括 start)到 end 结束(不包括 end)为止的所有字符。
说明
String 对象的方法 slice()、substring() 和 substr() (不建议使用)都可返回字符串的指定部分。slice() 比 substring() 要灵活一些,因为它允许使用负数作为参数。slice() 与 substr() 有所不同,因为它用两个字符的位置来指定子串,而 substr() 则用字符位置和长度来指定子串。
还要注意的是,String.slice() 与 Array.slice() 相似。
代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>String.prototype.slice()</title>
</head>
<body>
<script>
var string = 'abcdefghijklmn';
// 输出原始字符串
console.log(string);
// 从下标1开始选取
console.log(string.slice(1));
// 从最后一个开始选取
console.log(string.slice(-1));
// 从下标2选取,下标3结束; 输出的字符串不包含后一位
console.log(string.slice(2, 3));
// 从倒数第5位开始,在倒数第1位结束,不包括倒数第一位
console.log(string.slice(-5, -1));
// 再次输出原始字符串
console.log(string);
</script>
</body>
</html>
运行结果:
网友评论