很不理解,为什么mystr.substr(2,4)结果是love???求大佬讲解
就像数数一样的,但它这里是从0开始算的,0也代表是一位数字,那么0对应I,1对应空格(这里空格也算,也要对应一位数字),2对应的是L,以此类推,那么4对应的就是e。
结果取的是Love,那么就是从2开始到4结束,这样说,应该能看懂了吧
索引位置数和长度数的区别
你可以这样看,长度为4,索引位置从2开始,结果不就是love吗?
可以看成左右全闭区间,这几节有点乱,建议整理学习,注意区分指定区间和指定个数。
使用 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个数。
mystr[2]=l
从这一个字母往后数四个字母
var mystr="I love JavaScript!";
你看上面这段字符串哦.. I 是第一位对吧。。I后面有一个空格。。注意了。。空格在字符串里面是要占位置的,一个空格就是一位,两个就两位。。所以说2代表的就是空格,4代表的就是往空格后面数4位。。 所以截取出来的就是love