Created
May 20, 2014 12:41
-
-
Save reacher-lu/979398ad130c5f5d1916 to your computer and use it in GitHub Desktop.
js字符串截取 substring substr slice
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
substring(start,end) | |
start 必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。 | |
stop 可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。如果省略该参数,那么返回的子串会一直到字 符串的结尾。 | |
说明 | |
substring 方法返回的子串包括 start 处的字符,但不包括 end 处的字符。 | |
如果 start 与 end 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。 | |
如果 start 比 end 大,那么该方法在提取子串之前会先交换这两个参数。 | |
如果 start 或 end 为负数,那么它将被替换为 0。 | |
stringObject.substr(start [, length ]) | |
start 必需。所需的子字符串的起始位置。字符串中的第一个字符的索引为 0。 | |
length 可选。在返回的子字符串中应包括的字符个数。 | |
说明 | |
如果 length 为 0 或负数,将返回一个空字符串。 | |
如果没有指定该参数,则子字符串将延续到stringObject的最后。 | |
stringObject.slice(startIndex,endIndex) | |
返回字符串 stringObject 从 startIndex 开始(包括 startIndex )到 endIndex 结束(不包括 endIndex )为止的所有字符。 | |
1)参数 endIndex 可选,如果没有指定,则默认为字符串的长度 stringObject.length 。 | |
var stringObject = "hello world!"; | |
alert(stringObject.slice(3)); // lo world! | |
alert(stringObject.slice(3,stringObject.length)); // lo world! | |
【注1】字符串中第一个字符的位置是从【0】开始的,最后一个字符的位置为【stringObject.length-1】,所以slice()方法返回的字符串不包括endIndex位置的字符。 | |
2)startIndex 、endIndex 可以是负数。如果为负,则表示从字符串尾部开始算起。即-1表示字符串最后一个字符。 | |
var stringObject = "hello world!"; | |
alert(stringObject.slice(-3)); // ld! | |
alert(stringObject.slice(-3,stringObject.length)); // ld! | |
alert(stringObject.slice(-3,-1)); // ld | |
【注2】合理运用负数可以简化代码 | |
3)startIndex、endIndex 都是可选的,如果都不填则返回字符串 stringObject 的全部,等同于slice(0) | |
var stringObject = "hello world!"; | |
alert(stringObject.slice()); // hello world! | |
alert(stringObject.slice(0)); // hello world! | |
4)如果startIndex、endIndex 相等,则返回空串 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment