slice()、substr()、subString()使用及区别

来源:互联网 发布:有什么网络兼职的 编辑:程序博客网 时间:2024/06/16 05:38


slice(startIndex,endIndex):string

返回一个字符串,该字符串包括从startIndex 字符一直到endIndex字符(但不包括该字符)之间的所有字符。不修改原始string对象

1)如果startIndex >= endIndex 则该方法返回一个空字符串

2)如果未指定endIndex参数,此字符串就是该字符串的结尾

3)如果startIndex < 0 或 endIndex < 0则起始索引从字符串的结尾开始确定,其中-1表示最后一个字符

var str:String = 'abcdefgh';
trace(str.slice(1,3));//输出bc
trace(str.slice(1));//输出bcdefgh
trace(str.slice(3,3));//输出空
trace(str.slice(4,3));//输出空

trace(str.slice(-3,-1));//输出fg

trace(str);//输出abcdefgh


substr(startIndex,len):String

返回一个子字符串,该字符串中的字符是通过从指定的startIndex开始,按照len长度截取。不修改原始string对象

1)如果startIndex < 0 则起始索引从字符串的结尾开始确定,其中-1表示最后一个字符

2)如果未指定len,则字符串包括从startIndex到字符串结尾的所有字符

var str:String = 'abcdefgh';
trace(str.substr(1,3));
trace(str.substr(1));
trace(str.substr(-2));
trace(str);

substring(startIndex,endIndex):String

返回一个字符串,其中包含由 startIndex 指定的字符和一直到endIndex - 1 的所有字符。原始字符串保持不变

1)如果未指定 endIndex,则使用String.length

2)如果 startIndex ==endIndex ,则该方法返回一个空字符串。

3)如果 startIndex < 0,则使用0

4)如果startIndex > endIndex,则在执行函数之前会自动交换参数

5)如果endIndex < 0 则使用0

var str:String = 'abcdefgh';
trace(str.substring(1,3));//输出bc
trace(str.substring(2,2));//输出空
trace(str.substring(-2));//输出abcdefgh
trace(str.substring(4,3));//输出d
trace(str.substring(2,-3));//输出ab  先将-3换成0然后2 0交换参数
trace(str);//输出abcdefgh


1 0
原创粉丝点击