本文详细解析JavaScript中substring和substr两个字符串截取方法的定义、语法结构及参数说明。通过对比start和stop/length参数的差异,结合具体代码实例,阐明两者在提取子字符串时的行为逻辑与返回值规则,帮助开发者准确选择合适的方法。
substring 方法的定义与语法
1.substring 方法
定义和用法
substring 方法用于从字符串中提取位于两个指定索引位置之间的字符序列。
语法
stringObject.substring(start, stop)
参数说明: start:必需。指定一个非负整数,表示要提取的子串中第一个字符在 stringObject 中的索引位置。 stop:可选。指定一个非负整数,表示要提取的子串中最后一个字符在 stringObject 中的位置加 1。若省略此参数,则提取的子串将延伸至字符串末尾。
返回值
返回一个新字符串,该字符串包含从 start 索引到 stop-1 索引之间的所有字符,其长度等于 stop 减去 start 的值。
说明
substring 方法返回的子串包含 start 索引处的字符,但不包含 stop 索引处的字符。 若 start 与 stop 相等,则返回空字符串(长度为 0)。 若 start 大于 stop,该方法会在提取前自动交换这两个参数的值。 若 start 或 stop 为负数,则将其视为 0。
substr 方法的定义与语法
2.substr 方法
定义和用法
substr 方法用于从字符串中返回从指定起始位置开始、指定长度的子字符串。
语法
stringObject.substr(start [, length])
参数说明: start:必需。指定子字符串的起始位置,字符串中第一个字符的索引为 0。 length:可选。指定返回子字符串中包含的字符数量。
说明
若 length 为 0 或负数,则返回空字符串。 若未指定 length 参数,则子字符串将延伸至 stringObject 的末尾。
substring 与 substr 使用实例
3. 实例
代码如下:
<script type="text/javascript">
function Demo(){
var str,str;
var s = "Hello Word";
str = s.substring(0, 3); // 取子字符串。
console.log(str);//=====>Hel
str = s.substr(0,3);
console.log(str);//=====>Hel
}
</script>