为了账号安全,请及时绑定邮箱和手机立即绑定

String.slice和String.substring有什么区别?

String.slice和String.substring有什么区别?

catspeake 2019-08-28 16:40:40
String.slice和String.substring有什么区别?有谁知道这两种方法之间的区别是什么:String.protorype.sliceString.protorype.substring
查看完整描述

3 回答

?
猛跑小猪

TA贡献1858条经验 获得超8个赞

slice()substring()一些不同的行为一样工作。

Syntax: string.slice(start, stop);Syntax: string.substring(start, stop);

他们有什么共同点:

  1. 如果startequals stop:返回一个空字符串

  2. 如果stop省略:将字符提取到字符串的末尾

  3. 如果任一参数大于字符串的长度,则将使用字符串的长度。

区别 substring()

  1. 如果start > stop,那么substring将交换这两个参数。

  2. 如果任一参数为负数或者是NaN,则将其视为是0

区别 slice()

  1. 如果start > stopslice()将返回空字符串。(""

  2. 如果start是否定的:从字符串的末尾设置char,就像substr()在Firefox中一样。在Firefox和IE中都观察到此行为。

  3. 如果stop是否定的:将stop设置为:( string.length – Math.abs(stop)原始值),除非限制在0(因此,Math.max(0, string.length + stop)),如ECMA规范中所述

来源:编程与开发的基础艺术:Javascript:substr()vs substring()


查看完整回答
反对 回复 2019-08-28
?
红颜莎娜

TA贡献1842条经验 获得超12个赞

注意:如果你赶时间,和/或寻找简短的答案滚动到答案的底部,并阅读最后两行。如果不是匆忙阅读整个事情。


首先让我陈述一下事实:

语法:
string.slice(start,end)
string.substr(start,length)
string.substring(start,end)
注意#1:slice()==substring()

它能做什么?
slice()方法提取字符串的一部分,并以新字符串形式返回提取的部分。
substr()方法从指定位置的字符开始提取字符串的一部分,并返回指定数量的字符。
substring()方法提取字符串的一部分,并以新字符串形式返回提取的部分。
笔记2:slice()==substring()

更改原始字符串?
slice()
substr()
substring()
注3:slice()==substring()

使用负数作为参数:
slice()选择从字符串末尾开始的字符
substr()选择从字符串末尾开始的字符
substring()不执行
注意#3:slice()==substr()

如果第一个参数大于第二个:
slice()不执行,
substr()因为第二个参数不是一个位置,而是长度值,它会像往常一样执行,没有任何问题
substring()会交换这两个参数,并像往常一样执行

第一个参数:
slice()必需,表示:起始索引
substr()必需,表示:起始索引
substring()必需,表示:起始索引
注4:slice()==substr()==substring()

第二个参数:
slice()可选,位置(最多但不包括)结束提取的位置可选,
substr()要提取的字符数
substring()可选,位置(最多但不包括)结束提取的位置
注意#5:slice()==substring()

如果第二个论点被省略怎么办?
slice()选择从字符串的起始位置到结尾的
substr()所有字符选择从字符串的起始位置到结尾的
substring()所有字符选择从字符串的起始位置到结尾的所有字符
注意#6:slice()==substr()==substring()

所以,你可以说slice()和之间存在差异substr(),而substring()基本上是副本slice()

在摘要中:
如果您知道要停止的索引(位置)(但不包括),请slice()
在知道要提取的字符长度时使用substr()


查看完整回答
反对 回复 2019-08-28
  • 3 回答
  • 0 关注
  • 823 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信