字符串截取的几种方法

今天发现在写js的过程中,对各种字符串截取不太熟悉,今天就来记录一下。。。通常的字符串截取的方法有 substr,substring等。

先来说说这两种。。。首先它们俩的相同点:

当只有一个参数时:都时候从当前下标往后截取直到结尾。

例如:

var a="abcdef";
a=a.substr(2//输出 cdef
a=a.substring(2)//输出 cdef
console.log(a);

存在两个参数时:

substr(startIndex,lenth):从起始下标开始截取往后的字符串长度

substring(startIndex, endIndex):从当前下标开始截取,截取字符串最终的下标,也就是截取起始到结尾的中间部分。含头不含尾。

var a="abcdef"
a=a.substr(1,3) //输出bcd
a=a.subtring(1,3)//输出 bc
console.log(a);

再来说说 indexOf和lastindexOf()的相同点与区别

相同点:这两个方法都是用来查找目标值在数组中的位置。

1.indexOf(num),如果在数组中没找到目标值,就返回 -1

var arr=[10,5,2,3,4,5,7,8,9];
下标分别:0  1 2 3 4 5 6 7 8
console.log(arr.indexOf(5)); //输出 1
console.log(arr.indexOf(6)); //输出 -1

2.indexOf(num1,num2),在数组里面从num2往后开始查找num1,并返回num1在数组里正常的位置,如果在数组中没找到目标值,就返回 -1。

 var arr=[10,5,2,3,4,5,7,8,9];
  //索引值:0  1 2 3 4 5 6 7 8
console.log(arr.indexOf(8,5));//7
console.log(arr.indexOf(5,7));//-1

3.lastindexOf(num)

var arr=[10,5,2,3,4,5,7,8,9];
//索引值:0  1 2 3 4 5 6 7 8
console.log(arr.lastIndexOf(4));//4
console.log(arr.lastIndexOf(7));//6
console.log(arr.lastIndexOf(5));//5

4.lastindexOf(num1,num2)

var arr=[10,5,2,3,4,5,7,8,9];
//索引值:0  1 2 3 4 5 6 7 8
console.log(arr.lastIndexOf(4,6));//4,由于数组里面没有6,默认从arr[0]开始。
console.log(arr.lastIndexOf(7,4));//-1

 

posted @ 2020-04-25 15:22  CR7Ronaldo  Views(1447)  Comments(0Edit  收藏  举报