在JavaScript中访问字符串的子串
2015-07-07 00:00
543 查看
使用substring()或slice()方法(NN4+, IE4+),下面说明它们的具体用法。
substring()的原型为:
string.substring(from, to)
第一个参数from指定了子字符串在原字符串中的起始位置(基于0的索引);第二个参数to是可选的,它指定了子字符串在原字符串的结束位置(基于0的索引),一般情况下,它应比from大,如果它被省略,那么子字符串将一直到原字符串的结尾处。
如果参数from不小心比参数to大了会怎样?JavaScript会自动调解子字符串的起止位置,也就是说,substring()总是从两个参数中较小的那个开始,到较大的那个结束。不过要注意,它包含起始位置的那个字符,但不包含结束位置的那个字符。
var fullString = "Every dog has his day."; var section = fullString.substring(0, 4); // section is "Ever". section = fullString.substring(4, 0); // section is also "Ever". section = fullString.substring(1, 1); // section is an empty string. section = fullString.substring(-2, 4); // section is "Ever", same as fullString.substring(0, 4); slice()的原型为: string.slice(start, end)
参数start表示子串的起始位置,如果为负数,那么可以理解为倒数第几个开始,例如-3表示从倒数第三个开始;参数end表示结束位置,与start一样,它也可以为负数,其含义也表示到倒数第几个结束。slice()的参数可以为负数,所以要比substring()更加灵活,但没那么宽容了,如果start比end要大,它将返回一个空字符串(示例略)。
还有一个方法是substr(),其原型为:
string.substr(start, length)
从原型可以看出它的参数的含义,start表示起始位置,length则表示子字符串的长度。JavaScript标准不提倡使用该方法。
相关文章推荐
- javascript中数组方法汇总
- JavaScript中判断两个字符串是否相等的方法
- 浅谈JavaScript中的字符编码转换问题
- javascript实现控制div颜色
- Javascript编写俄罗斯方块思路及实例
- 理解JavaScript的变量的入门教程
- 使用JavaScript实现连续滚动字幕效果的方法
- JavaScript编写推箱子游戏
- JavaScript编写连连看小游戏
- 利用JavaScript脚本实现滚屏效果的方法
- Javascript编写2048小游戏
- javascript编写贪吃蛇游戏
- javascript数组排序汇总
- JS中的String对象的方法和获取原型方法+自定义方法
- js int 与 string
- JSP
- JS 不定函数参数argument的用法
- JSP网马
- js树状选择器
- 看了汤姆大叔的“你真懂JavaScript吗?”的一些感慨