Javascript - 在数组中查找 2 个项目?

标签 javascript arrays

在 Javascript 中使用 find,如何从数组中找到 2 个项目 1018

var ages = [3, 10, 18, 20];
ages.find(age => age === 10); // works on one item, returns 10
ages.find(age => age === (10 || 18)); // does not return 10 and 18

最佳答案

我会创建另一个数组来保存您要查找的可能年龄。这将比 语句更容易阅读和维护。

var ages = [3, 10, 18, 20];
var criteria = [10, 18];

let found = ages.filter(age => criteria.includes(age));
console.log(found);


正如@Flavio Ochoa 所指出的,Array.includes旧版浏览器可能不支持。如果您担心支持问题,或者没有为 Array.includes 使用 polyfill,您可以使用 Array.indexOf 代替:

ages.filter(age => criteria.indexOf(age) > -1);

关于Javascript - 在数组中查找 2 个项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41773097/

相关文章:

javascript - JS 正则表达式匹配特殊字符

c - 分配之间的差异

arrays - 如何使用数组字典循环工作表

arrays - 将字符串拆分为数组并修剪每个值的有效方法 - Swift

arrays - 是否可以反转具有恒定额外空间的数组?

javascript - 如何测试变量是否为 Moment.js 对象?

javascript - 在 div 上使用拖放和旋转

javascript - Puppeteer 在 headless 模式下挂起

javascript - 弹窗卸载问题

java - java中如何分割字符串数组