Javascript substring和substr参数为负数

substring()方法和substr()方法都用于在字符串中抽取子串。

具体用法请参阅w3school(http://www.w3school.com.cn/index.html),这里着重讲一下当参数中出现负数的情况。

1. substring()

substring(start, stop)原则上参数不能为负数,若强行传递负数,在执行时会被当成0处理。

另外,如果参数 startstop 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。如果 startstop 大,那么该方法在提取子串之前会先交换这两个参数。

2. substr()

substr(start, length)参数 start 如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推;

参数 length 原则上也不该为负数,若强行传递负数,会被当成0处理,那么该方法返回的就是一个空串(即长度为 0 的字符串)。