前端开发:JS中查找数组的目标元素方法find()、findIndex()的使用
2401_84092832 2024-06-26 12:35:04 阅读 62
(2)find() 并没有改变数组的原始值。
6、使用实例
根据实际开发过程中的不同需求,把实战中比较常见的处理方式汇总出来,需求是做不完的,也不可能全部覆盖到,这里只分享一些比较常见的操作,方便有需要的开发者查阅使用,具体的实例如下所示。
1.获取数组中选择的name和数组中对应的name一致的第一个元素的ID
//空置类型选择
onConfirm1(value) {
this.currentItem.VacancyID = this.columns2.find((a)=>a.Name == value).ID;
},
2.获取数组中选择的item中的ProjectName和ProjectNewNo,和数组中对应的一致的第一个元素
projectDetail() {
if (this.value) {
return this.sourcedata.filter((item) => {
return [item.ProjectName, item.ProjectNewNo].find(
(si) => {
return si.indexOf(this.value) != -1;
}
);
});
}
return this.sourcedata;
},
3.获取数组中数字大于14的第一个元素
var numbers = [3, 10, 14, 18, 20];
function check(number) {
return number >= 14;
}
console.log(numbers.find(check)); //输出结果:14
4.获取数组中的NaN
var array = [1, 2, NaN, 4, 5, 6];
var str = array.find((value, index, arr) => {
return Object.is(NaN, value);
});
console.log(“——”,str); //输出结果:NaN
5.查找对象数组中的符合条件的第一条元素
var array = [
{ name: ‘a’, value: 1},
{name: ‘b’,value: 2},
{ name: ‘c’,value: 3}
]
var str = array.find(item=>item.name == ‘b’)
console.log(str) // 输出结果为{name: ‘b’, value:2}
二、findIndex()方法
1、定义
findIndex() 方法返回传入一个测试条件(函数)符合条件的数组第一个元素位置。
2、语法
array.findIndex(function(currentValue, index, arr), thisValue);
3、参数说明
具体参数描述,如下图所示:
返回值
返回值 | 返回符合测试条件的第一个数组元素索引,如果没有符合条件的则返回 -1。 |
4、用法
findIndex() 方法为数组中的每个元素都调用一次函数执行:当数组中的元素在测试条件时返回 true 时, findIndex() 返回符合条件的元素的索引位置,之后的值不会再调用执行函数;如果没有符合条件的元素返回 -1。
5、注意事项
(1)findIndex() 对于空数组,函数是不会执行的;
(2)findIndex() 并没有改变数组的原始值。
6、使用实例
根据实际开发过程中的不同需求,把实战中比较常见的处理方式汇总出来,需求是做不完的,也不可能全部覆盖到,这里只分享一些比较常见的操作,方便有需要的开发者查阅使用,具体的实例如下所示。
1.获取数组中数字大于14的第一个元素的索引值
var numbers = [3, 10, 14, 18, 20];
function check(number) {
return number >= 14;
}
console.log(numbers.findIndex(check)); //输出结果:2 (2为下标索引位置)
2.获取数组中的NaN的索引值
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)
最后
资料过多,篇幅有限,需要文中全部资料可以点击这里免费获取前端面试资料PDF完整版!
自古成功在尝试。不尝试永远都不会成功。勇敢的尝试是成功的一半。
觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)**
最后
[外链图片转存中…(img-jZW11adj-1712311966868)]
[外链图片转存中…(img-puN1LXxd-1712311966869)]
资料过多,篇幅有限,需要文中全部资料可以点击这里免费获取前端面试资料PDF完整版!
自古成功在尝试。不尝试永远都不会成功。勇敢的尝试是成功的一半。
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。