码迷,mamicode.com
首页 > 编程语言 > 详细

JS 数组位置方法 indexOf()和lastIndexOf()的理解

时间:2019-01-27 19:10:34      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:计算   打印   indexof   bsp   nbsp   because   输出   不同   字符串   

 var numbers = [1,3,5,7,9,4,3,2,1];
 console.log(numbers.indexOf(5)); //从数组的0位开始查找 5 位于数组里面的位置 输出2

首先 理解一下 indexOf() 是从左往右查 参数“5” 位于数组的下标 所以这里打印出 2


 

再看

 var numArr = ["hehe","sss","ddada","haha","xixi"];
 console.log(numArr.lastIndexOf("dadad")) dadad b不存在 输出-1

console.log(numArr.lastIndexOf("haha"))  输出3

为什么看起来好像跟indexOf()没什么区别呢??  我在修改一下

 var numArr = ["hehe","sss","ddada","haha","haha","xixi"]; 此时 haha有两个

我们在打印看看

console.log(numArr.lastIndexOf("haha"))  输出4

这时输出的就是4 为什么呢?

因为 lastIndexOf()是找某个字符串在数组里最后出现的哪一个的位置。


 

// var arr = [1,2,3,4,5,6,7,1]
// console.log(arr.lastIndexOf(7));//6 下标为6的位置
// lastIndexOf 是从右向左查某个指定的字符串在字符串中最后一次出现的位置(也就是从后往前查)


 

var arr = [1,2,3,4,5,6,7,1]
console.log(arr.lastIndexOf(7,4));//6 下标为6的位置

//4为查找的索引(也就是下标到4) 如数组里1,2,3,4,5 因为7不在该索引里 所以打印-1


 再看!!!

// var arr = [1,2,3,4,5,5,6,7,1];
// console.log(arr.indexOf(5));//4 下标为4的位置
// console.log(arr.lastIndexOf(5));//5
// 这个时候两个返回的索引值就不同了
// because: 前面已经说了indexOf是从前向后查 而lastIndexOf是从后向前查 但是二者返回索引都是从前开始数数和计算的

JS 数组位置方法 indexOf()和lastIndexOf()的理解

标签:计算   打印   indexof   bsp   nbsp   because   输出   不同   字符串   

原文地址:https://www.cnblogs.com/yuobey/p/10326823.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!