For deeper understanding purpose i used val.key instead of val[ ] at function extractKey which i thought would give me [ name, name, name, name ] as result but instead i get [undefined, undefined, undefined, undefined] Why is this ? :
function extractKey(arr, key){
return arr.map(function(val){
return val.key;
})
}
extractKey([{name: 'Elie'}, {name: 'Tim'}, {name: 'Matt'}, {name:
'Colt'}], 'name') // ['Elie', 'Tim', 'Matt', 'Colt']
(4) [undefined, undefined, undefined, undefined]
Use (square brackets) array notation instead of (dot) object notation.
function extractKey(arr, key) {
return arr.map(function(val) {
return val[key];
})
}
const names = extractKey([{
name: 'Elie'
}, {
name: 'Tim'
}, {
name: 'Matt'
}, {
name: 'Colt'
}], 'name'); // ['Elie', 'Tim', 'Matt', 'Colt']
console.log(names);