数组实例的find() 和 findIndex()方法

数组实例的find()方法,用于找出第一个符合条件的数组成员。它的参数是一个回调函数,所有数组成员依次执行该回调函数,直到找出第一个返回值为true的成员,然后返回该成员。如果没有符合条件的成员,则返回undefined

  1. [1, 4, -5, 10].find((n) => n < 0)
  2. // -5

上面代码找出数组中第一个小于 0 的成员。

  1. [1, 5, 10, 15].find(function(value, index, arr) {
  2. return value > 9;
  3. }) // 10

上面代码中,find()方法的回调函数可以接受三个参数,依次为当前的值、当前的位置和原数组。

数组实例的findIndex()方法的用法与find()方法非常类似,返回第一个符合条件的数组成员的位置,如果所有成员都不符合条件,则返回-1

  1. [1, 5, 10, 15].findIndex(function(value, index, arr) {
  2. return value > 9;
  3. }) // 2

这两个方法都可以接受第二个参数,用来绑定回调函数的this对象。

另外,这两个方法都可以发现NaN,弥补了数组的indexOf()方法的不足。

  1. [NaN].indexOf(NaN)
  2. // -1
  3. [NaN].findIndex(y => Object.is(NaN, y))
  4. // 0

上面代码中,indexOf方法无法识别数组的NaN成员,但是findIndex()方法可以借助Object.is方法做到。

数组实例的find() 和 findIndex()方法相关推荐

  1. 数组实例的find()和findIndex()

    2019独角兽企业重金招聘Python工程师标准>>> 数组实例的find方法,用于找出第一符合条件的数组成员.它的参数是一个回调函数,所有的数组成员依次执行该回调函数,直到找出第一 ...

  2. JavaScipt30(第七个案例)(主要知识点:数组some,every,findIndex方法)

    承接上文,这是第7个案例,这个案例没什么说的,主要有三个注意点: 附上项目链接: https://github.com/wesbos/JavaScript30 // 1. slice(begin, e ...

  3. vue findIndex()方法

    前言: 最近正好写项目用到了这个方法,还是经同事提醒想到的 为此找了相关的知识, 希望可以让看到此博客的人有帮助吧,本人也研究的不深 非喜勿喷 还希望有大神多多指教 正文开始..... 一.findI ...

  4. javascript的findIndex()方法

    findIndex()方法 返回传入一个测试条件(函数)符合条件的数组第一个元素位置 findIndex()方法为数组中的每个元素都调用一次函数执行: 当数组中的元素在测试条件时返回true时,fin ...

  5. Array数组ES6方法Array.isArray、Array.of、Array.from;find、findIndex方法

    Array构造函数上的三个方法 Array.isArray Array.isArray() 用于确定传递的值是否是一个数组.如果是数组,则返回true,否则为false. // 鲜为人知的事实:其实 ...

  6. php html转成数组,PHP_php将HTML表格每行每列转为数组实现采集表格数据的方法,本文实例讲述了php将HTML表格每 - phpStudy...

    php将HTML表格每行每列转为数组实现采集表格数据的方法 本文实例讲述了php将HTML表格每行每列转为数组实现采集表格数据的方法.分享给大家供大家参考.具体如下: 下面的php代码可以将HTML表 ...

  7. 数组实例的includes()方法

    数组实例的includes()方法 Array.prototype.includes()方法返回一个布尔值,表示某个数组是否包含给定的值,与字符串的includes()方法类似.ES2016 引入了该 ...

  8. 数组实例的entries(),keys() 和 values()方法

    数组实例的entries(),keys() 和 values()方法 ES6 提供三个新的方法--entries(),keys()和values()--用于遍历数组.它们都返回一个遍历器对象(详见&l ...

  9. 数组实例的fill()方法 fill()方法

    数组实例的fill()方法 fill()方法使用给定值,填充一个数组. ['a', 'b', 'c'].fill(7) // [7, 7, 7] new Array(3).fill(7) // [7, ...

最新文章

  1. 【C++】用指针做函数参数
  2. 京东涉足快递业加剧行业动乱
  3. shell实例第11讲:取出系统IP地址,并判断属于哪个网段
  4. python使用xlrd模块读写excel
  5. python3 安装Crypto 出现的问题
  6. 使用SQLDMO中“接口SQLDMO.Namelist 的 QueryInterface 失败”异常的解决方法
  7. 重邮计算机导师评价,李章勇_重庆邮电大学研究生导师信息
  8. 崛企问卷调查小程序模块V1.3.2
  9. 数据结构 二叉树面试笔试编程题集
  10. C++自定应线程安全数据结构(1)
  11. [USACO06NOV]玉米田Corn Fields (状压$dp$)
  12. [笔记][原创]74HC595芯片使用方法介绍
  13. css背景颜色跟随文字颜色、设置文字颜色反色
  14. 加权平均数的例子_加权平均数公式(加权平均数公式例子)
  15. paranoid用法
  16. 原生js的animate方法
  17. 看视频可以倍速播放的(主流播放器都可以)
  18. 计算机网络实验四:配置网络路由
  19. 佳能i320打印机驱动安装
  20. TCP网络编程之chat聊天室

热门文章

  1. Innodb中的buffer poll和redo undo log
  2. 80 多个 Linux 系统管理员必备的监控工具
  3. 分享一本Swift好书
  4. 类、对象以及jvm运行内存解析
  5. iOS 本地通知 操作
  6. VMware vCloud与Zend Server实现PHP应用程序自动化交付
  7. java程序设计经典课堂讲课_Java程序设计与开发经典课堂
  8. 海致星图2022校招算法笔试题
  9. Ubuntu中anaconda的安装及使用
  10. BZOJ 4155 Humble Captains