区别在于第二个参数。 substring
的第二个参数是停止在(但不包括)的索引,但substr
的第二个参数是要返回的最大长度。
链接?
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/substr
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/substring
正如在 yatima2975 的答案中暗示的那样,还有一个区别:
substr()
接受一个负起始位置作为从字符串末尾的偏移量。 substring()
没有。
来自MDN :
如果 start 为负数,则 substr()将其用作字符串末尾的字符索引。
所以总结一下功能差异:
substring(begin-offset, end-offset-exclusive)
其中 begin-offset 为0
或更大
substr(begin-offset, length)
其中 begin-offset 也可以是负数