Javascript 搜索数组中项目名称相同的多个键的值
我有一个这样的数组:Javascript 搜索数组中项目名称相同的多个键的值,javascript,Javascript,我有一个这样的数组: const myArray = ['Item1', 'Item3', 'Item5']; 还有这样一个对象列表: ObjectsList: { Item1: ["A", "B", "C"], Item2: ["A", "D", "E"], Item3: ["B", "E", "C&
const myArray = ['Item1', 'Item3', 'Item5'];
还有这样一个对象列表:
ObjectsList: {
Item1: ["A", "B", "C"],
Item2: ["A", "D", "E"],
Item3: ["B", "E", "C", "G"],
Item4: ["B", "C", "R"],
Item5: ["D"],
Item6: ["F", "D", "E"],
Item7: ["A", "E", "L", "M"],
}
我希望获得所有具有相同数组元素名称的键的值,并将它们推入一个新数组中,而不包含重复的元素
在我提供的示例中,我希望获得Item1、Item3、Item5键值,并将它们推送到一个新数组中,以避免重复。结果应该是:[A、B、C、E、G、D]
在JavaScript中,哪种方法是最好的?
提前感谢。您可以从对象列表
中将myArray
转换为字符数组,然后使用删除重复字符。最后,可以使用将集合转换为数组:
const objectsList={Item1:[“A”、“B”、“C”]、Item2:[“A”、“D”、“E”]、Item3:[“B”、“E”、“C”、“G”]、Item4:[“B”、“C”、“R”]、Item5:[“D”]、Item6:[“F”、“D”、“E”]、Item7:[“A”、“E”、“L”、“M”]、};
常量myArray=['Item1','Item3','Item5'];
const res=[…新集合(myArray.flatMap(k=>objectsList[k]))];
控制台日志(res)
您可以将myArray
从ObjectsList
添加到字符数组中,然后使用删除重复字符。最后,可以使用将集合转换为数组:
const objectsList={Item1:[“A”、“B”、“C”]、Item2:[“A”、“D”、“E”]、Item3:[“B”、“E”、“C”、“G”]、Item4:[“B”、“C”、“R”]、Item5:[“D”]、Item6:[“F”、“D”、“E”]、Item7:[“A”、“E”、“L”、“M”]、};
常量myArray=['Item1','Item3','Item5'];
const res=[…新集合(myArray.flatMap(k=>objectsList[k]))];
控制台日志(res)代码>