1. substr()方法:可在字符串中抽取从 start 下标开始的指定数目的字符。
语法
stringObject.substr(start,length)
参数 | 描述 |
---|---|
start | 必需。要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。 也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。 |
length | 可选。子串中的字符数。必须是数值。 如果省略了该参数,那么返回从 stringObject 的开始位置到结尾的字串。 |
例1:
var str = "123456789";
document.write(str.substr(0,9));长度不可为负数,否则输出为空。
document.write(str.substr(0,100));
document.write(str.substr(0));
document.write(str.substr(-9,9));
document.write(str.substr(-100,9));//小于-9的数均按-9算。
输出均为:123456789
2.substring() 方法:用于提取字符串中介于两个指定下标之间的字符。
语法
stringObject.substring(start,stop)
参数 | 描述 |
---|---|
start | 必需。一个非负的整数,规定要提取的子串在第一个字符在 stringObject 中的位置。 |
stop | 可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。如果省略该参数,那么返回的子串会一直到字符串的结尾。 |
返回值
一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。
说明
substring() 方法返回的子串包括 start 处的字符,但不包括 end 处的字符。
如果参数 start 与 end 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。
如果 start 比 end 大,那么该方法在提取子串之前会先交换这两个参数。
例2:
var str = "123456789";
document.write(str.substring(0,9));//注意:含头不含尾。
document.write(str.substring(9,0));//先交换。
document.write(str.substring(100,-2));//先交换,-2按照0计算。
document.write(str.substring(0,100));
document.write(str.substring(-100,9));//start最小为0,小于0的按0计算。
输出均为:123456789
总结:至少有一个正数。