1.字符串的substr(startIndex,num)方法:开始下标,字符个数
// (第一个参数起始下标,(1)为负值时,视作length+负值,(2)超过最大下标时找不到多余字符)
// (第二个参数字符个数,(1)为负值视作0,即从指定开始下标开始,找0个字符,(2)超过字符串下标时找不到多余字符)
var s="abcde01234xyz"; console.log(s.substr(1,22)); //bc //从定开始下标1开始,找2个字符。 // (第一个参数起始下标,(1)为负值时,视作length+负值,(2)超过最大下标时找不到多余字符) // (第二个参数字符个数,(1)为负值视作0,即从指定开始下标开始,找0个字符,(2)超过字符串下标时找不到多余字符) console.log(s.substr(1,-2)); // //第二个参数为负值视作0,从指定开始下标开始,找0个字符 console.log(s.substr(-3,2)); //xy //第一个参数为负值,从下标为(length+负值)开始,找2个字符 console.log(s.substr(-3,3)); //xyz //第一个参数为负值,从下标为(length+负值)开始,找3个字符 console.log(s.substr(-3,4)); //xyz //第一个参数为负值,从下标为(length+负值)开始,找3个字符 console.log(s.substr(-3,5)); //xyz //第一个参数为负值,从下标为(length+负值)开始,找3个字符
2.字符串的substring(startIndex,endIndex)方法:开始下标到指定结束下标的前一个
参数为负值看做参数为0,
从小的参数下标找向大的参数下标前面一个(即两个参数可以交换位置),下标过大或者过小找不到多余字符
只有一个参数时,看做开始参数下标找到最后一个元素
var s="abcde01234xyz"; // 参数为负值看做参数为0,从小的下标找向大的下标前面一个 console.log(s.substring(1,2)); // b //从定开始下标1开始,到指定结束下标的前一个元素(从小的下标找向大的下标前一个) console.log(s.substring(-5,2)); // ab //第一个参数为负值看做下标为0,到指定结束下标的前一个元素 console.log(s.substring(1,-2)); //a //第二个参数为负值看做下标为0,从小的下标找向大的下标前一个 console.log(s.substring(2,-2)); //ab //第二个参数为负值看做下标为0, 从小的下标找向大的下标前一个 console.log(s.substring(3,-2)); //abc //第二个参数为负值看做下标为0, 从小的下标找向大的下标前一个 console.log(s.substring(4,-2)); //abcd//第二个参数为负值看做下标为0 从小的下标找向大的下标前一个 console.log(s.substring( 4,16)); //e01234xyz// 找不到多余字符
3.字符串的slice(startIndex,endIndex)方法:开始下标到指定结束下标的前一个
//参数负值,看做length+负值
//第一个参数或者第二个参数为负值时,该参数相对于(length+负值)即负值,循环字符串 // 多余字符找不到
//只有一个参数时,看做开始参数下标找到最后一个元素
// slice 参数负值,看做length+负值 //第一个参数或者第二个参数为负值时,该参数相对于(length+负值)即负值,循环字符串 /!* a b c d e 0 1 2 3 4 x y z a b c d e 0 1 2 3 4 x y z -2 -1 0 1 2 3 4 5 6 7 8 9 …… *!/ var s="abcde01234xyz"; console.log(s.slice(1,2)); // b //从指定开始下标1开始,到指定结束下标2的前一个元素 console.log(s.slice(1,0)); // // //从指定开始下标1开始,到指定结束下标0的前一个元素 console.log(s.slice(1,-1)); // bcde01234xy //从指定开始下标1开始,到(length+负值)结束下标的前一个元素 console.log(s.slice(1,-2)); // bcde01234x //从指定开始下标1开始,到(length+负值)结束下标的前一个元素 console.log(s.slice(-5,12)); // 34xy //从指定开始下标(length+负值)开始,到结束下标的前一个元素 console.log(s.slice(-6,12)); // 234xy //从指定开始下标(length+负值)开始,到结束下标的前一个元素 console.log(s.slice(-6,13)); // 234xyz //从指定开始下标(length+负值)开始,到结束下标的前一个元素 console.log(s.slice(-6,15)); // 234xyz //从指定开始下标(length+负值)开始,到结束下标的前一个元素(多余字符找不到) console.log(s.slice(-6,16)); // 234xyz //从指定开始下标(length+负值)开始,到结束下标的前一个元素(多余字符找不到)