javascript数组中的findIndex方法

JavaScript数组中的findIndex方法

findIndex() 是JavaScript Array 中的一个非常实用的方法,主要用于查找数组中满足指定条件的元素的下标。

语法

array.findIndex(callback(element[, index[, array]])[, thisArg])

参数

callback: 索引的函数,接受3个参数:

  • element: 当前遍历到的元素
  • index(可选):当前遍历到的元素的下标
  • array(可选):调用findIndex的数组

thisArg(可选):callback执行时的this

返回值

findIndex() 返回一个满足callback函数的第一个元素的下标,如果没有满足的元素则返回 -1。

示例

假设在一个 Todo 列表中,有如下数据:

const todoList = [
  { id: 1, name: 'Learn JavaScript', isCompleted: true },
  { id: 2, name: 'Build a website', isCompleted: false },
  { id: 3, name: 'Learn React', isCompleted: true },
  { id: 4, name: 'Watch a movie', isCompleted: false }
];

示例1:查找第一个未完成的任务

const index = todoList.findIndex(item => !item.isCompleted);

通过 !item.isCompleted 将查找未完成任务的条件定义在回调函数中,由于 findIndex() 返回的是第一个满足条件的元素的下标,因此如果找到了第一个未完成的任务,则返回它在 todoList 中的下标 1。

示例2:查找第一个任务名为“Learn React”的任务

const index = todoList.findIndex(item => item.name === 'Learn React');

通过 item.name === 'Learn React' 将查找任务名为“Learn React”的任务的条件定义在回调函数中,由于 findIndex() 返回的是第一个满足条件的元素的下标,因此如果找到了任务名为“Learn React”的任务,则返回它在 todoList 中的下标 2。

结语

findIndex() 可以很方便地帮助我们在数组中查找元素的下标。当我们需要寻找数组中符合特定条件的元素时,使用 findIndex() 可以写起来非常简单和方便。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:javascript数组中的findIndex方法 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • Vue指令v-for遍历输出JavaScript数组及json对象的常见方式小结

    关于 Vue 指令 v-for 遍历输出 JavaScript 数组及 JSON 对象的常见方式小结,我来给您详细讲解一下。 1. 遍历 JavaScript 数组 (1)遍历数组并输出 在 Vue 中可以使用 v-for 指令对 JavaScript 数组进行遍历,并输出数组的每一项内容。语法格式如下: <ul> <li v-for=&q…

    JavaScript 2023年5月27日
    00
  • 初步了解JavaScript,Ajax,jQuery,并比较三者关系

    初步了解 JavaScript、Ajax 和 jQuery JavaScript JavaScript 是一种轻量级的编程语言,用于在网页上创建交互式的效果。它是一种客户端脚本语言,意味着它是在用户的计算机上运行的。JavaScript 在网页上增加了很多功能,例如动态数据验证、弹出窗口、动画和页面轮廓等。 Ajax Ajax 是 Asynchronous …

    JavaScript 2023年6月11日
    00
  • Element中table组件按照属性执行合并操作详解

    Element是一个基于Vue.js的组件库,内置了丰富的UI组件,其中包括Table组件。Table组件可以用于展示数据表格,提供了多种功能和样式配置选项,具有丰富的使用场景。在Table组件中,可以通过设置属性来控制表格的合并操作,使得数据呈现更加清晰明了。 本文详细讲解了Element中table组件按照属性执行合并操作的攻略,包括基本的属性设置、跨行…

    JavaScript 2023年6月10日
    00
  • 利用fecha进行JS日期处理

    日期是我们在开发过程中运用最广泛的数据类型之一。JavaScript中有很多原生的日期处理方法,但也存在一些缺点,例如有时候会显示不正确的时区或格式,因此有必要使用第三方库进行日期处理。其中一个优秀的库就是fecha。下面将为大家详细介绍如何使用该库进行JS日期处理。 1. 安装fecha 首先需要在项目中安装fecha库,可以使用npm进行安装。 npm …

    JavaScript 2023年6月11日
    00
  • AngularJS使用angular-formly进行表单验证

    AngularJS是目前比较流行的前端框架之一,用来构建复杂的单页应用程序。表单验证是前端开发过程中必不可少的环节。在AngularJS中,可以使用angular-formly库简化表单验证的开发过程。下面是使用angular-formly进行表单验证的详细攻略。 什么是angular-formly angular-formly是一个AngularJS表单生…

    JavaScript 2023年6月10日
    00
  • 5种处理js跨域问题方法汇总

    以下是“5种处理js跨域问题方法汇总”的完整攻略: 1. 什么是跨域问题 跨域问题是指在浏览器端,当脚本试图访问来自不同源(域名、端口、协议)的资源时,会出现安全限制,这就是跨域问题。跨域问题对前端开发影响较大,如果不处理的话,可能会出现一些非常棘手的问题。 2. 为什么会出现跨域问题 跨域问题的产生是因为浏览器出于安全考虑而限制了客户端脚本中发起的跨域HT…

    JavaScript 2023年6月11日
    00
  • 28个JS常用数组方法总结

    28个JS常用数组方法总结 本文将介绍28个JS常用数组方法,包括简单的遍历方法和高级的数组变换方法。这些方法可以用来操作数组,从而更好的解决开发中出现的问题。 1. forEach forEach用于遍历数组并对数组中的每个元素执行指定操作。操作通过传递一个回调函数实现。回调函数接受三个参数:数组中的当前元素、当前元素的索引和数组本身。 const arr…

    JavaScript 2023年5月27日
    00
  • javascript中拼接HTML字符串的最快、最好的方法

    拼接HTML字符串是在javascript中开发中的一个常见需求。为了避免使用字符串拼接来构造HTML代码时产生的代码难以维护、不易阅读的问题,我们可以使用其他更好的方法来拼接HTML字符串,这是一个更快、更好的方法。 本文将介绍如何通过使用JavaScript来拼接HTML字符串,并给出两个例子,以详细解释每个步骤。 基于字符串模板的拼接 第一个方法是基于…

    JavaScript 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部