关于substr()函数

关于substr()函数

老师说substr()函数的第二个参数是要截取的长度,那么请问正负号方法里面,n.substr(1, n.length),这个不会越界嘛?因为真正要返回的不是从第二个字符开始截取,返回的字符串应该比当前n少一位呀?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,1. substr(start,length) 方法可在字符串中抽取从 start 下标开始(下标从0开始)的指定数目的字符。

2. 参数:

        start:必需。要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。  

        length:可选。子串中的字符数。必须是数值。如果省略了该参数,那么返回从 字符串的开始位置到结尾的字串。  

返回值:

        一个新的字符串,包含从 字符串的 start(包括 start 所指的字符) 处开始的 length 个字符。如果没有指定 length,那么返回的字符串包含从 start 到 字符串的结尾的字符。

3. 当length长度超过字符串长度时,会直接截取到最后一个字符,并不会出现越界的情况。所以设置为n.substr(1, n.length)是可以的。当然同学设置为n.substr(1, n.length-1)也是正确的。

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

  • 慕莱坞4341820 提问者 #1
    我的意思就是length表示要的字符数量,在这里要去掉第一个符号,所以字符数量不应该是现有长度-1吗?
    2020-10-11 15:17:57
  • 好帮手慕小尤 回复 提问者 慕莱坞4341820 #2
    同学你好,刚是老师没有理解清楚,已修改回答,请同学前去查看。给您的学习带来不便,深感抱歉!祝学习愉快!
    2020-10-11 16:05:17
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师