为了账号安全,请及时绑定邮箱和手机立即绑定

lastIndexOf,indexOf和数组中数值顺序问题

lastIndexOf,indexOf和数组中数值顺序问题

qq_大寒_2 2016-04-26 16:18:53
var number=[1,2,3,4,5,4,3,2,1] console.log(number.lastIndexOf(5));//返回3 var number=[1,2,3,4,5,6] console.log(number.lastIndexOf(3));//返回2 为什么调用lastIndexOf方法,返回值是2而不是3? 相对应的定义number=[6,5,4,3,2,1] 调用lastIndexof(3)方法可以返回3 难道数组中number数值排序顺序会直接影响到indexOf或者lastIndexOf的结果 比如按数值从小到大排序,调用lastIndexOf方法会转换成indexOf方法进行执行结果吗? 里面关系是怎样的?
查看完整描述

3 回答

已采纳
?
qq_青枣工作室_0

TA贡献446条经验 获得超754个赞

索引从0开始的,你要这样数:第0个,第1个,第2个...

var number=[1,2,3,4,5,4,3,2,1]
console.log(number.lastIndexOf(5));//返回3

上面返回的是4,你从0开始数,数到4就是了。

 

var number=[1,2,3,4,5,6]
console.log(number.lastIndexOf(3));

lastIndexOf是从末尾开始找,找到一个后,返回的是找到值的索引(就是number[2]=3,索引为2)。而不是从右边数第几个。

indexOf是从开头找,返回的也是结果的索引。

查看完整回答
1 反对 回复 2016-04-26
  • qq_大寒_2
    qq_大寒_2
    哦,我搞混了,我以为lastIndexOf(n),传递是项数而不是值,多谢多谢,第一条笔误
?
音客

TA贡献9条经验 获得超8个赞

就算是用lastindexOf查找的返回的下标也是从左往右算的。

并非你所欲想的从右往左额。

查看完整回答
1 反对 回复 2016-04-26
  • qq_大寒_2
    qq_大寒_2
    这个调用方法有查找下标作用?w3c上没写啊? 语法: stringObject.lastIndexOf(searchvalue,fromindex) searchvalue必须是字符串,我这里是数值,估计进行了隐式转换 第二个可选的整数参数。规定在字符串中开始检索的位置。
  • qq_大寒_2
    qq_大寒_2
    哦,我明白你的意思了,索引方面有没有推荐的资料没,像你所说的索引顺序,索引方法等
?
mooc用户18273

TA贡献50条经验 获得超30个赞

索引从0开始。。。第0个元素是1,这样开始数

查看完整回答
反对 回复 2016-04-28
  • 3 回答
  • 0 关注
  • 1881 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信