JavaScript Array of Objects Explained - Loop, Map, UI Display
What is Array of Objects?
- Object stores data of a single user or single item
- When we have multiple users or multiple items, one object is not enough
- In that case, we use array of objects
Example of Problem
let users = {
name: "anil"
};
- Cannot store multiple users
- If we add another
name, it will overwrite previous value
Array of Objects Syntax
let users = [
{ name: 'anil', age: 29, email: 'anil@test.com' },
{ name: 'sam', age: 25, email: 'sam@test.com' },
{ name: 'peter', age: 34, email: 'peter@test.com' }
];
- Array is created using
[] - Objects are inside array using
{}
Looping on Array of Objects
for...of loop
for (let user of users) {
console.log(user);
}
userrepresents each object
Access data:
user.name
user.age
Display Data on UI
HTML
<ul id="user-list"></ul>
JavaScript
let list = document.getElementById('user-list');
list.innerHTML = "";
Using Loop
for (let user of users) {
list.innerHTML += "<li>Hello, User name is <b> "
+ user.name + " </b> and user age is <b> "
+ user.age + " </b></li>";
}
Using map
users.map((user) => {
list.innerHTML += "<li>Hello, User name is <b> "
+ user.name + " </b> and user age is <b> "
+ user.age + " </b></li>";
});
Using forEach
users.forEach((user) => {
list.innerHTML += "<li>Hello, User name is <b> "
+ user.name + " </b> and user age is <b> "
+ user.age + " </b></li>";
});
Key Points from Script
- Array of objects is used when data is multiple
- Each object stores one user’s data
- Loop is required to access each object
- Data can be displayed on UI using
innerHTML for...of,map, andforEachcan be used for iteration