javascript中substr,substring,slice.splice的区别说明 |
substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符. start 是截取的开始位置的下标,从0开始算起,必须是数字.可以是负数,-1是倒数第一个字符,-2是倒数第二个字符,以此类推. length 是要截取的字符的长度,必须是数字.如果未指定,则从start位置处开始截取到字符串结尾. substr 指定的是字符串的开始下标跟截取长度,所以可以替代substring跟slice使用. 重要事项:ECMAscript 没有对该方法进行标准化,因此反对使用它 。
substring() 方法用于提取字符串中介于两个指定下标之间的字符 。 stringObject.substring(start,end);start必须,end可选. start 是截取的开始位置的下标,从0开始算起,必须是非负数字.(w3c说必须是非负整数,试验了下,不是整数也可以.) end 必须是数字.如果未指定,则从start位置处开始截取到字符串结尾.
注意事项:substring截取的字符不包括end处的字符.所以截取的长度为end-start. start=end的话,返回空字符串,长度为0. 重要事项:substring不接收负的参数,slice和substr可以.
slice() 方法可提取字符串的某个部分,并以新的字符串返回被提取的部分 。 stringObject.slice(start,end);start必须,end可选. start 要抽取的片断的起始下标 。如果是负数,则该参数规定的是从字符串的尾部开始算起的位置 。也就是说,-1 指字符串的最后一个字符,-2 指倒数第二个字符,以此类推 。 end 紧接着要抽取的片段的结尾的下标 。若未指定此参数,则要提取的子串包括 start 到原字符串结尾的字符串 。如果该参数是负数,那么它规定的是从字符串的尾部开始算起的位置 。
splice() 方法用于插入、删除或替换数组的元素 。 arrayObject.splice(index,howmany,element1,.....,elementX)index,howmany必须,其他可选.
index 规定从何处添加/删除元素 。该参数是开始插入和(或)删除的数组元素的下标,必须是数字 。 howmany 规定应该删除多少元素 。必须是数字,但可以是 "0" 。如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素 。 element1 规定要添加到数组的新元素 。从 index 所指的下标处开始插入 。 elementx 可向数组添加若干元素 。 注释:请注意,splice() 方法与 slice() 方法的作用是不同的,splice() 方法会直接对数组进行修改 。 所有提示:某些情况下,负数的参数不识别.所以尽量不要用负数作参数.免得浏览器不兼容,造成程序的出错.
这是JavaScript 权威指南上的说明,象我这种E文很烂的就能勉强看懂一下,并没有对着翻译,只是按照理解说明了下 。 string.substring(from, to) Arguments
Arguments
string.substr(start, length) Arguments
复制代码 代码如下: var s = "abcdefg"; s.substring(1,4) // Returns "bcd" s.slice(1,4) // Returns "bcd" s.substr(1,4) // Returns "bcde" s.substring(2,-3) // Returns "ab" 实际上是 s.substring(0,2) 较小的参数会在前面 s.slice(2,-3) // Returns "cd" 实际上是 s.slice(2,4) s.substr(2,-3) // Returns "cdef" 实际上是 s.slice(2,4) |