【发布时间】:2017-12-16 13:43:36
【问题描述】:
我知道在 Javascript 中,我可以在数组上使用 .some 或 .every 来检查它们是否至少有一个项目或每个项目都通过了提供的函数实现的测试。
这里有一些例子:
[2, 5, 8, 1, 4].some(x => x > 10); // false
[12, 5, 8, 1, 4].some(x => x > 10); // true
[12, 5, 8, 130, 44].every(x => x >= 10); // false
[12, 54, 18, 130, 44].every(x => x >= 10); // true
我正在寻找检查一个数组是否有“一个且只有一个”项通过给定函数。 我想要一些类似以下的方法:
[12, 5, 12, 13, 4].oneAndOnlyOne(x => x >= 10); // false
[2, 11, 6, 1, 4].oneAndOnlyOne(x => x >= 10); // true
您是否知道任何新的 ECMA 脚本 6 方式或任何简单/快速的方式,即使使用 lodash,也可以检查数组中是否只有一个且唯一出现的具有特定值的项目?
【问题讨论】:
-
[...].filter(x => x > 10).length === 1
标签: javascript arrays ecmascript-6 lodash