substr()和substring()都是JavaScript字符串的方法,可以用来截取字符串的一部分。它们的用法和行为有一些不同。
一、substr
substr(startIndex, length)
- startIndex:必需,表示要开始截取的位置的索引。如果为负数,将从字符串末尾开始计算。
- length:可选,表示要截取的字符数。如果省略该参数,将截取从startIndex开始到字符串末尾的所有字符。
var str = "12345678";
console.log(str.substr(1,5)); // "23456"
console.log(str.substr(1)); // "2345678"
console.log(str.substr(-2)); // "78"
二、substring
substring(startIndex, endIndex)
- startIndex:必需,表示要开始截取的位置的索引。如果为负数,将被视为0。
- endIndex:可选,表示要截取的结束位置的索引(不包括该索引对应的字符)。如果省略该参数,将截取从startIndex开始到字符串末尾的所有字符。
var str = "12345678";
console.log(str.substr(1,5)); // "2345"
console.log(str.substr(1)); // "2345678"
console.log(str.substr(-2)); // "12345678"
substr()和substring()都不会改变原始字符串,而是返回一个新的字符串。
