首页 > 其他分享 >find,findIndex方法

find,findIndex方法

时间:2023-08-10 12:03:44浏览次数:31  
标签:findIndex name val newArr arr id let 方法 find

find()方法:数组中每个元素都调用一次函数中执行, 通过判断返回符合条件的对象,没找到返回undefined; findIndex()方法:数组实例的findIndex方法 找出第一个符合条件元素的位置,没找到返回-1;

find:

// 1.找出数组中id=50的元素
let arr=[
   {id:10,name:'狼了个狼'},
   {id:20,name:'狼了个狼'},
   {id:30,name:'狼了个狼'},
   {id:40,name:'狼了个狼'},
   {id:50,name:'狼了个狼'}
]
let index=arr.find(val=>val.id==50)
console.log(index); // {id:'50',name:'狼了个狼'}
// 2.获取数组中的NaN
let arr=[1,2,NaN,3,4,5,6];
let newArr=arr.find(val=>{
  return Object.is(NaN,val)
})
 console.log(newArr); //NaN
//3. 没有找到返回undefined
  let arr = [1, 2, 3, 4, 5, 6];
    let newArr = arr.find(val => {
        return val === 9
    })
    console.log(newArr); //undefined
  // 3.获取数组中第一个大于19的元素
    let arr=[1,3,5,7,19,21,23]
    let newArr=arr.find(val=>{
        return val>19
    })
    console.log(newArr); //21

findIndex:

//1. 找出数组中第一个大于10的元素对应的索引值
let arr=[10,2,30,40,50]
let index=arr.findIndex(val=>val>10)
console.log(index);// 2
// 2. 找出第一个符合条件对应的索引值
let arr=[1,20,30,40,50]
let newArr=arr.findIndex(val=>val==1)
console.log(newArr);//0
// 3. 找出id=5的元素对应的索引值
let arr=[
{id:1,name:'狼了个狼'},
{id:2,name:'狼了个狼'},
{id:3,name:'狼了个狼'},
{id:4,name:'狼了个狼'},
{id:5,name:'狼了个狼'}
]
let newArr=arr.findIndex(val=>val.id===5)
console.log(newArr); //4
// 没有找到返回-1
 let arr = [1, 20, 30, 40, 50]
    let newArr = arr.findIndex(val => val == 10)
    console.log(newArr); // -1

注意:findIndex对于空数组,函数是不会执行的; find 对于空数组,函数也是不会执行的,不会改变数组的原始值

标签:findIndex,name,val,newArr,arr,id,let,方法,find
From: https://blog.51cto.com/u_16221669/7032857

相关文章

  • Node Sass错误问题 Node Sass could not find a binding for your current environmen
    Modulebuildfailed(from./node_modules/sass-loader/dist/cjs.js):Error:MissingbindingD:\2@Html\vue_work_room\blsh-student-view\node_modules\node-sass\vendor\win32-x64-83\binding.nodeNodeSasscouldnotfindabindingforyourcurrentenviron......
  • 聚焦Web前端安全:最新揭秘漏洞防御方法
    在Web安全中,服务端一直扮演着十分重要的角色。然而前端的问题也不容小觑,它也会导致信息泄露等诸如此类的问题。在这篇文章中,我们将向读者介绍如何防范Web前端中的各种漏洞。【万字长文,请先收藏再阅读】首先,我们需要了解安全防御产品已经为我们做了哪些工作。其次,我们将探讨前端......
  • 使用在线Excel时,有哪些方法可以引入计算函数?
    摘要:本文由葡萄城技术团队于博客园原创并首发。转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。前言在日常生活和工作中,我们都会或多或少的使用Excel中的计算公式函数,比如求和公式、平均数公式等。今天为大家整理了一些在线Excel中可......
  • 三种常见的平滑滤波方法
    一、概述  平滑滤波,顾名思义就是对信号进行处理使之整体显得更加平滑,降低噪声影响,提高信号质量,它常见于数学信号处理和图像处理,一般意义上的数字信号多体现于一维数据,图像信号多体现于二维数据。  均值滤波、中值滤波、高斯滤波是三种常见的平滑滤波方法,其中均值滤波和高斯......
  • iPhone上使用Charles 抓包的配置方法与问题解决方式
    我是在Macos下配置的,其它平台的内容和步骤也差不多。配置方法:(网上很多,大致说下)一、Charles下载:1)官网下载地址:https://www.charlesproxy.com/download/  二、Charles配置代理:1)查看本机IP:help-->LocalIPAddress   2)查看或者设置访问端口:Proxy->ProxySettings三、配置ios手......
  • 目标检测mAP计算方法-简单易懂
    本次将整理一份map计算方法,主要分为三部分,第一部分简单了解原理,第二部分理解如何调用coco等相关库得到map,第三部分教会读者如何结合模型(任何可计算map的网络模型)调用而生成map,而本博客希望读者能掌握使用模型预测map,其重点也为第三部分: 第一部分介绍map原理,主要引用部分他人结......
  • 关闭任务计划程序前您必须关闭所有会话框的解决方法
    关闭任务计划程序前您必须关闭所有会话框的解决方法问题描述创建计划任务后关闭窗口时弹出来的,把所有窗口都关了,还是一样弹出提示。解决方案提示关闭任务计划程序前,您必须关闭所有会话框,是设置错误造成的,解决方法如下:方案一 可以用任务管理器,在应用程序中选择该程序,然后在......
  • 一文看懂Apipost接口自动化使用方法
    随着项目研发进程的不断推进,软件功能不断增多,对于软件测试的要求也越来越高。为了提高测试效率和减少测试成本,许多软件测试团队借助于自动化测试工具来优化测试流程。Apipost也提供了自动化测试工具,在本文中,我们将探讨如何借助Apipost自动化测试工具来优化测试流程。Apipost是一......
  • SolidWorks2021中文版软件图文安装教程,注册激活方法【附安装包下载】
    一、下载方式[软件名称]:SolidWorks2021[软件语言]:简体中文 [软件大小]:14.6G[安装环境]:Win11/Win10[硬件要求]:[email protected]内存@8G及以上下载链接%70%61%6E%2E%62%61%69%64%75%2E%63%6F%6D/%73/%31%47%4B%61%44%46%4D%44%56%77%59%34%75%6E%43%52%74%4C%68%47%36%37%41?%70%77%64=%......
  • 一文看懂Apipost接口自动化使用方法
    随着项目研发进程的不断推进,软件功能不断增多,对于软件测试的要求也越来越高。为了提高测试效率和减少测试成本,许多软件测试团队借助于自动化测试工具来优化测试流程。Apipost也提供了自动化测试工具,在本文中,我们将探讨如何借助Apipost自动化测试工具来优化测试流程。Apipost是......