JS中的substr和substring都是用于截取字符串的函数,前者指的是从一个指定位置开始截取指定长度的字符串,后者指的是截取从start到end但不包括end长度的字符串

substr 和 substring都是JavaScript中截取字符串的函数,但是由于这两者之间的用法很相近,因此经常会被混淆,接下来在文章中将为大家具体介绍这两者之间的用法和区别,具有一定的参考作用,希望对大家有所帮助。

【推荐课程:JavaScript教程

substr 方法

用于返回一个从指定位置开始的指定长度的子字符串,它的语法如下所示

str.substr(start [, length ])
登录后复制

其中str表示要截取的字符串,start表示所需的子字符串的起始位置,默认的第一个字符的索引为0,length指的是返回的子字符串中包含的字符个数

注意:当length为0或者为负数时,将返回空字符串

substring 方法

用于返回位于 str 对象中指定位置的子字符串,语法如下所示

str.substring(start, end)
登录后复制

表示还方法将返回的是一个从start到end(不包含end)的子字符串,其中start表示子字符串的起始位置,默认值为0,end指的是字符串结束位置

注意:substring 方法使用 start 和 end 中两者较小的为起始点

 str.substring(0, 3)
登录后复制

等价于

str.substring(3, 0)
登录后复制

如果 start 或 end 为 NaN 或者负数,那么将其替换为0,其中字符串的长度为start于end之差的绝对值

例:

<script>
var str = 'abcdefg'
var str1 = str.substring(1,2);
var str2 = str.substr(1,2);
console.log("substring返回的值:"+str1); 
console.log("substr返回的值:"+str2); 
</script>
登录后复制

效果图:

JS中的substr和substring的用法及区别-LMLPHP

可以看出substring返回的字符串长度是1,而substr返回的长度是2。

总结:以上就是本篇文章的全部内容了,希望对大家有所帮助。

以上就是JS中的substr和substring的用法及区别的详细内容,更多请关注Work网其它相关文章!

09-18 17:14