这里有新鲜出炉的 Javascript 教程,程序狗速度看过来!
Javascript 是一种由 Netscape 的 LiveScript 发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如 Perl,遗留的速度问题,为客户提供更流畅的浏览效果。
这篇文章主要介绍了 js 中 substring 和 substr 两者区别和使用方法, 每一个步骤都有相应的文字介绍,感兴趣的小伙伴们可以参考一下
在开始之前,先回顾下 js 中下标(数组元素 / 字符串中字符下标):
下标总是从 0 开始计数,例如
var arr = [1,2,3];// 数组的长度为 3,元素下标依次为:0,1,2
arr[0] = 1,arr[1]=2..
字符串类似:如 var s = "hello";// 字符串长度为 5,第一个字符'h'的下标为 0,依次类推
String.substring( ):用于返回一个字符串的子串
用法如下:string.substring(from, to)
其中 from 指代要抽去的子串第一个字符在原字符串中的位置
to 指代所要抽去的子字符串最后一个字符的后一位(这个参数可以不加)
下面就对 String.substring( ) 做举例:
1、string.substring(from):此时相当于从 from 位置截取到原字符串末尾
- var s = "hello";
- s.substring(1);//就是从下标为1的字符(这里是'e')开始起到字符串末尾全部截取,最终获得子串"ello"
2、string.substring(from, to):从 from 位置截取到 to-1 的位置
- var s = "hello";
- s.substring(1,3);//相当于从位置为1的字符截取到位置为2的字符,得到子串为:"el"
String.substr(): 作用也是抽去一个子串,但是它和上面的 String.substring() 有所不同
用法如下:string.substr(start, length)
start:指代截取子串开始下标
length:截取子串的长度(可省略)
1、string.substr(start, length):先举个例子来说明:
- var s = "hello";
- s.substr(1,3); //从下标为1的字符开始截取3个字符长度,最后子串为:ell
补充两种特殊情况:
a、第二个参数超过了剩余字符长度
- var s = "hello";
- s.substr(1,7)//这种情况下默认从,start位置到原字符串末尾,即返回:"ello"
b、第一个参数为负数
这种情况,从字符串尾部开始计算,-1 指字符串最后一个字符,-2 指倒数第二个字符... 依次类推
- var s = "hello";
- s.substr(-3,2)//即从倒数第三个字符开始起截取2个长度,获得:"ll"
2、string.substr(start):不带 length 参数,默认指代从 start 位置截取到字符串末尾
- var s = "hello";
- s.substr(3) //"lo"
以上就是关于 js 中 substring 和 substr 区别与用法的详细介绍,大家可以结合之前的相关文章进行学习,希望对大家的学习有所帮助。
(adsbygoogle = window.adsbygoogle || []).push({});
来源: http://www.phperz.com/article/17/0629/268809.html