String.prototype.slice() 方法

96
waka
2017.01.13 18:30* 字数 260

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>

运行结果:

JavaScript
Web note ad 1