Som*_*rat 3 javascript substring substr slice
var name="nameSomnath";//remove name
Run Code Online (Sandbox Code Playgroud)
我可以做 slice()
var result = name.slice( 4 );
Run Code Online (Sandbox Code Playgroud)
同样可以做到 substring()
var result = name.substring( 4 );
Run Code Online (Sandbox Code Playgroud)
那么是什么让他们与众不同。我已经看到了详细说明差异的链接here。但是我们可以通过使用任何一种方法 ieslice()或来做同样的事情substring()。所以为什么需要两种方法。
尽管表面上看起来slice和substring做同样的事情,但最大的区别在于他们如何处理否定论点。
在 Netscape 2.0 中首次创建 JavaScript 时,只有一种substring方法。如果其中一个参数为负,则将它们视为 0。
当 JavaScript 1.2 与 Netscape 4.0 一起引入时,他们希望添加允许负索引表示距字符串末尾的距离的行为。他们无法更改substring为具有这种新行为,因为它会破坏与期望将负索引视为 0 的脚本的向后兼容性,因此他们必须创建一个新函数来支持添加的功能。这个函数被调用slice,并开始实施Array,以及String。
另一个较小的区别是substring参数的顺序无关紧要,因此substring(1, 4)与substring(4, 1). 使用slice,顺序确实很重要,因此slice(4, 1)只会产生一个空字符串。
| 归档时间: |
|
| 查看次数: |
2956 次 |
| 最近记录: |