How to loop through object in JavaScript(es6)
In this tutorial, we are going to learn different ways to loop through an object in JavaScript.
For in loop
for in loop helps us to get the object key on each iteration by using that we can access the object value.
const obj = {
id:1,
name: "gowtham",
active: true
}
for (let key in obj){
if(obj.hasOwnProperty(key)){
console.log(`${key} : ${obj[key]}`)
}
}
//first iteration key is id
//second iteration key is name
//third iteration key is activeNote: we used
obj.hasOwnProperty(key)method, to make sure that property belongs to that object becausefor inloop also iterates over an object prototype chain.
Object.keys
The Object.keys() method takes the object as an argument and returns the array with given object keys.
By chaining the Object.keys method with forEach method we can access the key, value pairs of the object.
Example:
const obj = {
id:1,
name: "gowtham",
active: true
}
Object.keys(obj).forEach(key=>{
console.log(`${key} : ${obj[key]}`);
});
Object.values
The Object.values() method takes the object as an argument and returns the array with given object values.
By using this method we can only access the object values.
Example:
Object.values(obj).forEach(value=>{
console.log(value);
});Object.entries
The Object.entries() method returns the array with arrays which are [key,value] pairs of the given object.
Example:
Object.entries(obj).forEach(([key,value])=>{
console.log(`${key}:${value}`)
})Object.getOwnPropertyNames
The Object.getOwnPropertyNames method also returns the array with given object properties or keys(including non-enumberable properties).
Example:
Object.getOwnPropertyNames(obj).forEach(key=>{
console.log(`${key}:${obj[key]}`);
})

