javascript - Array.find() 或 Array.some() 但返回自定义值

标签 javascript arrays ecmascript-6

我能做什么:

const val = array.find((val) => <condition>);
const index = array.indexOf(val);

我想做的事:

const { val, index } = array.someFunc((val, index) => <condition> && { val, index });

外面还有这样的事吗? some() 被简化为 bool 值,而 find() 仅返回数组元素,但都不适合用例。

最佳答案

没有内置的功能。但是Object.entries可以使用:

const array = ['foo', 'bar', 'baz'];

const [ index, val ] = Object.entries(array).find(([i, v]) => v === 'baz');

console.log(index, val);

关于javascript - Array.find() 或 Array.some() 但返回自定义值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60404361/

相关文章:

javascript - 执行存储为变量名的 jquery 函数

javascript - jquery 脚本中的“不是函数”错误

iphone - subarrayWithRange 具有大数据

javascript - 汇总错误 : 'default' is not exported by node_modules/react/index. js

javascript - ES6 箭头函数是否有自己的参数?

javascript - 属性或方法 "users"未定义 vue js 应用程序

java - 在子数组中划分二维数组

arrays - 如何根据条件计算谷歌表格上的加权平均值?

javascript - 如何自动更新我的 javascript 文件以导入新检测到的文件?

javascript - 如何在函数中获取从数组返回的项