清烛歆歊
2016-07-04 10:04
substring()方法包含头,不包含尾,但是如果省略尾参数,又包含了最后一个字符,这是为啥呀?
比如字符串mystr=“hello world!”
mystr.substring(6) //显示world!
mystr.substring(6,11) //显示world
明明是11的长度呀
首先返回的后一个参数stop,是返回到 stop-1 处的所有字符,如果没有参数就返回到对象结尾;如你举的例子,就是返回到mystr[6-10]的字符串。然后,你的字符长度是12,不是11,下标是从0 开始算起的。
先使用.length查看字符串的长度
字符串mystr=“hello world!” 空格也算一个字符。
返回的内容是从 start开始(包含start位置的字符)到 stop-1 处的所有字符,其长度为 stop 减start。
11是不包含第11个字符 第6,7,8,9,10的字符
substring() 方法返回的子串包括 start 处的字符,但不包括 stop 处的字符。
http://www.w3school.com.cn/jsref/jsref_substring.asp(w3c学院)
“!”字符在第十一个字符位置,所以没有显示。
JavaScript进阶篇
468196 学习 · 21891 问题
相似问题