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

很不理解substr的用法,

很不理解,为什么mystr.substr(2,4)结果是love???求大佬讲解

正在回答

7 回答

就像数数一样的,但它这里是从0开始算的,0也代表是一位数字,那么0对应I,1对应空格(这里空格也算,也要对应一位数字),2对应的是L,以此类推,那么4对应的就是e。

结果取的是Love,那么就是从2开始到4结束,这样说,应该能看懂了吧

0 回复 有任何疑惑可以回复我~

索引位置数和长度数的区别

0 回复 有任何疑惑可以回复我~

你可以这样看,长度为4,索引位置从2开始,结果不就是love吗?

0 回复 有任何疑惑可以回复我~

可以看成左右全闭区间,这几节有点乱,建议整理学习,注意区分指定区间和指定个数。

0 回复 有任何疑惑可以回复我~

使用 substr() 从字符串中提取一些字符,代码如下:

<script type="text/javascript">
  var mystr="I love JavaScript!";
  document.write(mystr.substr(7));
  document.write(mystr.substr(2,4));
</script>

以上,是官方知识点的介绍示例。

具体怎样理解,你可以这样来想:

substr后面只有1个数时,那这个数是指从第几位索引号开始找“它”及它之后所有的字符串内容。

substr后面有2个数时,那第1个数是指从第几位索引号开始找,第2个数不是索引号(不是指第几位),而是长度数字共有几个数。结合例子来讲,“2”是指第2个索引号,那就是字母“l”,"4"指的是从“i”开始找4个数,那找到的整体就是“love”, 共4个数。

2 回复 有任何疑惑可以回复我~

mystr[2]=l

从这一个字母往后数四个字母

0 回复 有任何疑惑可以回复我~
var mystr="I love JavaScript!";

你看上面这段字符串哦.. I 是第一位对吧。。I后面有一个空格。。注意了。。空格在字符串里面是要占位置的,一个空格就是一位,两个就两位。。所以说2代表的就是空格,4代表的就是往空格后面数4位。。 所以截取出来的就是love

1 回复 有任何疑惑可以回复我~
#1

Ztooon

小哥说错了吧,love的l是2,前面的空格是1
2018-07-21 回复 有任何疑惑可以回复我~
#2

慕沐8531599 回复 Ztooon

I大写的这个,你从I数,把空格算上。。。I是1,空格是2。。 清楚吗?
2018-07-24 回复 有任何疑惑可以回复我~
#3

Ztooon 回复 慕沐8531599

你理解错了吧... i是0 空格是1 love的l是2 mystr.substr(2,4)是从2起始往后4位 包括2的l
2018-07-24 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

很不理解substr的用法,

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信