substring()、slice()和substr()的区别

这几天看以前的文档,当看到substring()、slice()和substr()时,不清楚它们的区别,经查阅资料并亲自验证,做出以下总结:

首先定义一个变量便于下面测试:var str='q1207526854'


str.substring(form,to):从字符串里截取下标为form到下标为to的字符串(包括to对应的字符alert(str.substring(2,6))   // 2075

  当form>to时,substring会把较小的参数作为第一参数     alert(str.substring(6,2))   //2075

  并且当其中某个参数值为负数时,substring会直接将负数转成0。   alert(str.substring(6,-2))   //q12075

----------------------------------------------------------------------------------------------------------------------

str.slice(star,end):从字符串里抽取下标为star到下标为end的字符串(不包括end对应的字符) alert(str.slice(2,6))   //2075

    当star>end时,slice会返回空字符串   alert(str.slice(6,2))   // null

    并且当其中某个参数值为负数时,slice会将此参数与字符串长度相加的结果作为参数 alert(str.slice(6,-2))   // 268

    且slice可以对数组操作。

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

str.substr(star,length):从下标为star的字符串开始,截取长度为length的一个子字符串  alert(str.substr(2,6))   // 207526

   当star为负数时,substr会将此参数与字符串长度相加的结果作为参数   alert(str.substr(-6,2))   // 52

   当end为负数时,返回空字符串。 alert(str.substr(6,-2))   // null  

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值