检查一个string是否属于一个数组types值的对象中的一个键

假设我有一个名为“groups”的object ,其中有些值是数组的键:

 let groups = { group1: ['A', 'B', 'C'], group2: ['X', 'Y', 'Z'] }; let item = 'B'; 

我该如何去发现这个item实际上在group1呢? ( 注意 :会有很多组,我知道我可以使用for循环遍历对象中的每个键,但会有更快的方法吗?)

您可以使用Map来参考组的键。

 let groups = { group1: ['A', 'B', 'C'], group2: ['X', 'Y', 'Z'] }, map = new Map, item = 'B'; Object.keys(groups).forEach(k => groups[k].forEach(v => map.set(v, k))); console.log(map.get(item));