How to Use forEach() with Key Value Pairs
Jul 14, 2021
JavaScript's forEach()
function takes a callback as a parameter, and calls
that callback for each element of the array.
It calls the callback with the value as the first parameter and the array index as the 2nd parameter.
// Prints "0: a, 1: b, 2: c"
['a', 'b', 'c'].forEach(function callback(value, index) {
console.log(`${index}: ${value}`);
});
forEach()
is a method on JavaScript arrays, not objects.
To iterate over an object, you must turn it into an array using Object.entries(), Object.keys(), or Object.values()
.
After that, you can then use forEach()
to iterate through the keys, values, or entries:
const obj = {
name: 'Jean-Luc Picard',
rank: 'Captain'
};
// Prints "name Jean-Luc Picard" followed by "rank Captain"
Object.keys(obj).forEach(key => {
console.log(key, obj[key]);
});
const obj = {
name: 'Jean-Luc Picard',
rank: 'Captain'
};
// Prints "Jean-Luc Picard" followed by "Captain"
Object.values(obj).forEach(val => {
console.log(val);
});
const obj = {
name: 'Jean-Luc Picard',
rank: 'Captain'
};
// Prints "name Jean-Luc Picard" followed by "rank Captain"
Object.entries(obj).forEach(entry => {
const [key, value] = entry;
console.log(key, value);
});
Did you find this tutorial useful? Say thanks by starring our repo on GitHub!