मुझे आश्चर्य है कि संग्रह से सरणी तत्व द्वारा तत्व प्राप्त करने का सबसे अच्छा और आसान तरीका क्या है - क्या यह मूल जेएस का उपयोग करके संभव है?

यहाँ मामला क्या है:

const ids = [1, 2, 3, 4]
const collection = [{id: 2}, {id: 234}, {id:1}, {id: 345}, {id: 3}, {id:4}, {id:323}];

अपेक्षित आउटपुट इस तरह दिखना चाहिए:

[{id: 1}, {id: 2}, {id: 3}, {id: 4}]

क्या लॉश में पहले से ही कुछ बनाया गया है? मुझे पता है कि हम फ़िल्टर और इंडेक्सऑफ का उपयोग कर सकते हैं लेकिन मुझे आश्चर्य है कि ऐसा करने का सबसे छोटा और आसान तरीका क्या है।

0
wudoem 2 अप्रैल 2018, 11:19

1 उत्तर

सबसे बढ़िया उत्तर

सरल जेएस

includes के संयोजन के साथ filter का उपयोग करना

const ids = [1, 2, 3, 4]
const collection = [{id: 2}, {id: 234}, {id:1}, {id: 345}, {id: 3}, {id:4}, {id:323}];

const found = collection.filter(item => ids.includes(item.id));

console.log(found);
1
Suren Srapyan 2 अप्रैल 2018, 08:21