indexOf 和 lastIndexOf的区别
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了indexOf 和 lastIndexOf的区别相关的知识,希望对你有一定的参考价值。
- indexOf 和 lastIndexOf 是什么?
- indexOf 和 lastIndexOf 都是索引文件
- indexOf 是查某个指定的字符串在字符串首次出现的位置(索引值) (也就是从前往后查)
- eg:
- lastIndexOf 是从右向左查某个指定的字符串在字符串中最后一次出现的位置(也就是从后往前查)
- eg:
- 注意:
- 那么问题来了 两个不是一前一后相反方向还是查么?怎么他们两个返回的索引值相同呢?
- because:lastIndexOf()方法虽然是从后往前搜索,但返回的位置是从前开始数数和计算的,所以结果和indexOf()方法返回的相同
- 注意二:
- 那如果数组(字符串)中出现相同的valuesearch呢?
- (这个时候我的数组有两个7);
- 结果是不是大跌眼镜?
- 这个时候两个返回的索引值就不同了
- because: 前面已经说了indexOf是从前向后查 而lastIndexOf是从后向前查 但是二者返回索引都是从前开始数数和计算的
- 总结:
- 当数组(字符串)中所要查询的数(字符串/字符)在字符串(数组)中只出现一次的时候 二者返回的索引值相同
- 当数组(字符串)中所要查询的数(字符串/字符)在字符串(数组)中出现两次及以上的时候
- indexOf 返回的是 valuesearch 第一次在数组(字符串)出现的位置(从左往右)
- lastIndexOf 返回的是 valuesearch 最后一次在数组(字符串)出现的位置(从左往右)《只不过查询的方向不同而已》
- 小言:
- 在学习这两个的时候 一定别把 两个的查询方向和返回的索引值的关系分清楚 不要混为一谈
以上是关于indexOf 和 lastIndexOf的区别的主要内容,如果未能解决你的问题,请参考以下文章
JavaScript indexOf() 方法和 lastIndexOf() 方法
JavaScript indexOf() 方法和 lastIndexOf() 方法
JS 数组位置方法 indexOf()和lastIndexOf()的理解