第163题:indexOf 和 findIndex 的区别
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。如果没有找到匹配的字符串则返回 -1。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。如果没有找到匹配的字符串则返回 -1。
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(2)
indexOf
与findIndex
都是查找数组中满足条件的第一个元素的索引indexOf
例如:
请注意:
indexOf()
使用严格等号(与===
或 triple-equals 使用的方法相同)来比较searchElement
和数组中的元素所以,
indexOf
更多的是用于查找基本类型,如果是对象类型,则是判断是否是同一个对象的引用findIndex
findIndex
期望回调函数作为第一个参数。如果你需要非基本类型数组(例如对象)的索引,或者你的查找条件比一个值更复杂,可以使用这个方法。indexOf 与 findIndex 区别(总结)
indexOf
:查找值作为第一个参数,采用===
比较,更多的是用于查找基本类型,如果是对象类型,则是判断是否是同一个对象的引用findIndex
:比较函数作为第一个参数,多用于非基本类型(例如对象)的数组索引查找,或查找条件很复杂源码实现(加深)
indexOf
:findIndex
:indexOf用于查找基本数据类型的下标,内部采用全等(===)来进行判断,
findIndex用于查找复杂数据类型的下标,arr.findIndex(item=>{item.id==1})