JavaScript
x
3
1
const selectedAnimals = ['lion','tiger','elephant','deer','bird','turtle']
2
const zoo = [{id: '1', name:'lion'},{id: '2', name:'panda'},{id: '3', name:'tiger'},{id: '4', name:'rabbit'},{id: '5', name:'bear'},{id: '6', name:'elephant'},{id: '7', name:'deer'},{id: '8', name:'bird'},{id: '9', name:'turtle'}]
3
Hi! There are two different arrays and I want to compare two arrays and find the id of selected animals from the zoo. How do I get the array of ids? Also, the id has to be a string. Thank you
Advertisement
Answer
Make a look-up table that gives the ID for each name, then use this to get the IDs of each selected animal.
JavaScript
1
4
1
const selectedAnimals = ['lion','tiger','elephant','deer','bird','turtle'];
2
const zoo = [{id: '1', name:'lion'},{id: '2', name:'panda'},{id: '3', name:'tiger'},{id: '4', name:'rabbit'},{id: '5', name:'bear'},{id: '6', name:'elephant'},{id: '7', name:'deer'},{id: '8', name:'bird'},{id: '9', name:'turtle'}];
3
const idByName = Object.fromEntries(zoo.map(item => [item.name, item.id]));
4
console.log(selectedAnimals.map(name => idByName[name]));