从数组中提取属性

时间:2020-10-08 10:00:52

标签: javascript

我有一个如下数组-

const options = [{text:'A', _id: '5trgh'}, {text:'B', _id: '5vjds'}, {text:'C', _id: '5njkn'}];

我想基于_id提取文本的值。如果我只有一个_id,则可以使用以下过滤器轻松完成此操作-

const filteredText = options.filter(k => k._id == '5trgh'); // outputs A

我想知道如果我一次拥有多个ID(如5trgh和5vjds),又想输出带有过滤后的文本的A和B,该怎么办。

2 个答案:

答案 0 :(得分:2)

您可以创建一个数组并存储要过滤的ID。然后使用数组过滤器并使用NULL过滤出ID在includes数组中的对象

ids

答案 1 :(得分:0)

你是这个意思吗?

const options = [{text:'A', _id: '5trgh'}, {text:'B', _id: '5vjds'}, {text:'C', _id: '5njkn'}];

const IDs = options.map(item => item._id); // from this you could create buttons for example

IDs.forEach(id =>  console.log(id, options.filter(k => k._id == id)));