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

JS中的substring和substr函数的区别说明?

JS中的substring和substr函数的区别说明?

呼如林 2019-02-04 09:05:34
JS中的substring和substr函数的区别说明
查看完整描述

3 回答

?
有只小跳蛙

TA贡献1824条经验 获得超8个赞

在JS中函数声明: stringObject.substring(start,stop)
start是在原字符串检索的开始位置,stop是检索的终止位置,返回结果中不包括stop所指字符.
如:"123456789".substring(2,5)则显示的为 "345"

substr(start,length)
如"123456789".substr(2,5))它显示的是 "34567"
String.substr(N1,N2) 这个就是我们常用的从指定的位置(N1)截取指定长度(N2)的字符串;
String.substring(N1,N2) 这个就有点特别了,它是先从N1,N2里找出一个较小的值,然后从字符串的开始位置算起,截取较小值位置和较大值位置之间的字符串,截取出来的字符串的长度为较大值与较小值之间的差。



查看完整回答
1 反对 回复 2019-03-14
?
RISEBY

TA贡献1856条经验 获得超5个赞

       题主既然在这里问了就说明题主一定网上查过,但是看的不太明白。 楼上的两个回答无非就是从网上什么地方摘抄一段,很不走心。 我给题主来个走心的! 保证简单易懂 不说套话  哈哈。


      1. OK, 先说  substr(n,m)    意思是 跳过 n 个取 m 个。 举例如下:


        var s = "abcdef";


        alert( s.substr(2, 1) );  //跳过2个取1个  那么结果是c   建议题主自己试试。


      2. 再说 substring(n,m)   意思是 索引  n  开始取  一直取到索引  m   注意 :不包含 索引为 m  的

     

        举例如下:


        var s = "abcdef"; //注意 索引是从0开始


        alert( s.substring(2, 4) );  // 从索引为 2的开始取   , 取到索引为 4的, 也就是是 从 c开始取到e,不包含e  那么结果是  cd  建议题主自己试试。



   



查看完整回答
反对 回复 2019-03-14
?
慕侠2389804

TA贡献1719条经验 获得超6个赞

substring 方法用于提取字符串中介于两个指定下标之间的字符
substring(start,end)
开始和结束的位置,从零开始的索引
substring 方法返回的子串包括 start 处的字符,但不包括 end 处的字符。
如果 start 与 end 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。
如果 start 比 end 大,那么该方法在提取子串之前会先交换这两个参数。
如果 start 或 end 为负数,那么它将被替换为 0。

substr 方法用于返回一个从指定位置开始的指定长度的子字符串
举例:
var str = "0123456789";

alert(str.substring(0));------------"0123456789"
alert(str.substring(5));------------"56789"
alert(str.substring(10));-----------""
alert(str.substring(12));-----------""
alert(str.substring(-5));-----------"0123456789"
alert(str.substring(-10));----------"0123456789"
alert(str.substring(-12));----------"0123456789"
alert(str.substring(0,5));----------"01234"
alert(str.substring(0,10));---------"0123456789"
alert(str.substring(0,12));---------"0123456789"
alert(str.substring(2,0));----------"01"
alert(str.substring(2,2));----------""
alert(str.substring(2,5));----------"234"
alert(str.substring(2,12));---------"23456789"
alert(str.substring(2,-2));---------"01"
alert(str.substring(-1,5));---------"01234"
alert(str.substring(-1,-5));--------""

alert(str.substr(0));---------------"0123456789"
alert(str.substr(5));---------------"56789"
alert(str.substr(10));--------------""
alert(str.substr(12));--------------""
alert(str.substr(-5));--------------"56789"
alert(str.substr(-10));-------------"0123456789"
alert(str.substr(-12));-------------"0123456789"
alert(str.substr(0,5));-------------"01234"
alert(str.substr(0,10));------------"0123456789"
alert(str.substr(0,12));------------"0123456789"
alert(str.substr(2,0));-------------""
alert(str.substr(2,2));-------------"23"
alert(str.substr(2,5));-------------"23456"
alert(str.substr(2,12));------------"23456789"
alert(str.substr(2,-2));------------""
alert(str.substr(-1,5));------------"9"
alert(str.substr(-1,-5));-----------""


查看完整回答
反对 回复 2019-03-14
  • 3 回答
  • 0 关注
  • 809 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信