JavaScript Array lastIndexOf() 方法和indexOf() 方法


语法:array.lastIndexOf(item,start)

参数:

item 必需。规定需检索的字符串值。
start 可选的整数参数。规定在字符串中开始检索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的最后一个字符处开始检索。

返回值:Num,没有找到返回 -1

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

解析:

  • 1.  只有一个参数时,lastIndexOf从后往前找第一个item,找到就返回索引值。例如:arr.lastIndexOf(7)   -----   从后往前找第一个7,索引值为6,所以结果就是6。
  • 2. 两个参数时,arr.lastIndexOf(4,6)  ------  在索引 0---6 之间找4,其索引值为4,所以结果就是4。 arr.lastIndexOf(4,3)  ------  在索引 0---3 之间找4,其中没有4,所以返回 -1

 

语法:array.IndexOf(item,start)

 

参数:

 

item 必需。规定需检索的字符串值。
start 可选的整数参数。规定在数组中开始检索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的首字符开始检索。

 

返回值:Num,没有找到返回 -1

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

 

解析:

  • 1.  只有一个参数时,IndexOf从前往后找第一个item,找到就返回索引值。例如:arr.IndexOf(5)   -----   从前往后找第一个5,索引值为2,所以结果就是2。
  • 2.  两个参数时,arr.IndexOf(5,2)  ------  在索引 0---2之后找第一个5,其索引值为2,所以结果就是2。 arr.IndexOf(1,2)  ------  在索引 0---2之后找第一个1,其索引值为7,所以结果就是7。
  • 3. arr.IndexOf("5")  ------  因为查找的是字符串"5",所以找不到返回 -1

注意:在字符串中也可以使用该方法,参数一样。

  • 1. indexOf(5, 2) 查找的是字符串前2位之后的第一个5
  • 2. lastIndexOf(5, 2) 查找的是字符串前2位之内的最后一个5
  • 3. 在字符串中空格也是一位数
  • 4. 在字符串带参数是为了定位,要找哪段字符串中的 a,找到这个 a 后,再从前往后数,计算并返回它在总字符串中的位置与在数组用法一样。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM