1.split()
split()用于把一个字符串分割成字符串数组
stringObject.split(separator,howmany)
参数说明:
-
separator参数:必需填。字符串或正则表达式,从该参数指定的地方分割 stringObject。
-
howmany参数:可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。
2.slice()
slice()可通过指定的开始和结束位置,提取字符串的某个部分,并以新的字符串返回被提取的部分,前闭后开
stringObject.slice(start, end)
参数说明:
-
start(必需):规定从何处开始选取。如果是负数,那么它规定从字符串尾部开始算起的位置。也就是说,-1 指最后一个字符,-2 指倒数第二个字符,以此类推。
-
end(可选):规定从何处结束选取,即结束处的字符下标。如果没有指定该参数,那么截取的字符串包含从 start 到结束的所有字符。如果这个参数是负数,那么它规定的是从数组尾部开始算起的字符。
注意事项:
-
start比end大的话,返回空字符串;
-
如果start与end相等,返回空字符串
代码展示:
let string = '0123456789';
let strSplit = string.slice(0, -1);//012345678
let strSplit1 = string.slice(3, 5);//34
let strSplit2 = string.slice(5, 3);
console.log(strSplit2.length);//0
let strSplit3 = string.slice(5, 5);
console.log(strSplit3.length);//0
3.substring()
substring()用于提取字符串中介于两个指定下标之间的字符 前闭后开
stringObject.substring(start, stop)
参数说明:
-
start(必需):一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。
-
stop(可选):一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。
注意事项:
-
如果 start 与 end 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。
-
如果 start 比 end 大,那么该方法在提取子串之前会先交换这两个参数。
-
如果 start 或 end 为负数,那么它将被替换为 0。
代码展示:
let string = '0123456789';
let strSubString = string.substring(5, 2);//234
let strSubString1 = string.substring(3, 5);//34 相当于string.substring(3, 5)
let strSubString2 = string.substring(5, -1);//01234 相当于string.substring(5, 0)
let strSubString3 = string.substring(5, 5);
console.log(strSubString3.length);//0
4.substr
substr()用于返回一个从指定位置开始的指定长度的子字符串
stringObject.substr(start, length)
参数说明:
-
start(必需):所需的子字符串的起始位置。字符串中的第一个字符的索引为 0。
-
length(可选):在返回的子字符串中应包括的字符个数。
注意事项:
-
如果 length 为 0 或负数,将返回一个空字符串。
-
如果没有指定 length,则子字符串将延续到 stringObject 的最后。
-
如果 start为负数,那么它规定从字符串尾部开始算起的位置。也就是说,-1 指最后一个字符,-2 指倒数第二个字符,以此类推
代码展示:
let strSubStr = string.substr(2, 5); //23456
let strSubStr1 = string.substr(2, 0);
console.log(strSubStr1.length);//0
let strSubStr2 = string.substr(2, -1);
console.log(strSubStr2.length);//0
let strSubStr3 = string.substr(2);//23456789
let strSplit4 = string.substr(-1);//9