JS中的substr和substring的区别
发布时间:2025-05-19 14:34:56 发布人:远客网络
一、JS中的substr和substring的区别
1、substr和 substring在 JS中皆用于截取字符串,本质相似。
2、substr用法为 substr(start, length),其中 start必填,length可选。当 length未指定时,从 start开始至字符串末尾截取。
3、substring采用 substring(start, end)形式,注意得到的子串不包含 end位置字符,且 start必填,end可选。同样,当 end未指定时,截取从 start开始到字符串末尾。
4、当仅为一个参数时,无论 substr还是 substring,截取的范围均从 start下标开始至字符串末尾。
5、在 JS中,字符串的第一个索引为 0,因此在只有一个参数的情况下,substr和 substring的结果相同,没有差异。
6、然而,当使用两个参数时,两者便展现出区别。具体结果如图所示,直观清晰。
二、JS截取字符串substr 和 substring方法的区别
1、在JavaScript中,substring和 substr方法用于提取字符串的子串,但它们的使用方式略有不同。
2、substring方法用于提取字符串中介于两个指定下标之间的字符。其语法为:stringObject.substring(start, end)。其中,start是必需的,表示要提取的子串的第一个字符在 stringObject中的位置;end是可选的,表示要提取的子串的最后一个字符在 stringObject中的位置,但不包含在子串中。如果省略 end参数,那么返回的子串会一直到字符串的结尾。
3、substr方法用于返回一个从指定位置开始的指定长度的子字符串。其语法为:stringObject.substr(start, length)。其中,start表示子字符串的起始位置,length表示在返回的子字符串中应包括的字符个数。
4、需要注意的是,如果 start为负数,则 start会替换为 0。如果 length为 0或负数,将返回一个空字符串。如果没有指定 length参数,则子字符串将延续到 stringObject的最后。
5、两个方法的主要区别在于 start参数的处理方式。在 substring方法中,start必须是一个非负整数。而在 substr方法中,start可以是负数,此时它将被替换为 0。
6、举个例子,对于字符串 str="0123456789",str.substring(0)会返回整个字符串"0123456789"。而 str.substr(0)也会返回整个字符串。
7、当 start和 end参数的位置颠倒时,substring会在提取子串之前先交换这两个参数,而 substr不会。
8、总之,虽然 substring和 substr两个方法都可以用来提取字符串的子串,但它们在参数处理和返回结果上存在一定的差异。
三、JavaScript中substr和substring的区别
1、JavaScript中substr和substring的区别
2、今天在写一个上传图片实现本地浏览的js时候,本来我是要用substr的结果,在写的过程中将其写成了substring了,最后运行的时候发现和我设想的有差别。一看代码发现我把substr给写成了substring了,所以就没有达到预期效果!就查了一下两者的区别:
3、String.substr(N1,N2)这个就是我们常用的从指定的位置(N1)截取指定长度(N2)的字符串;
4、String.substring(N1,N2)这个就是我们常用的从指定的位置(N1)到指定的位置(N2)的字符串;
5、alert("123456789".substr(2,5))它显示的是"34567"
6、alert("123456789".substring(2,5))则显示的为"345"
7、~如果你认可我的回答,请及时点击【采纳为满意回答】按钮
8、~~手机提问的朋友在客户端右上角评价点【满意】即可。
9、~~O(∩_∩)O,记得好评和采纳,互相帮助,谢谢。