Array & Object — Solutions
Official solutions for Module 3 challenges.
If you didn’t try first — scroll back.
“Data skills aren’t memorized. They’re trained.”
🔥 Challenge 1 — Filter Students (score > 80)
JavaScript
let students = [
{ name: "Adit", score: 85 },
{ name: "Bela", score: 92 },
{ name: "Ciko", score: 70 }
];
let passedStudents = students.filter(s => s.score > 80);
console.log(passedStudents);
Why filter?
Because you’re selecting data, not transforming it.
🔥 Challenge 2 — Increase Prices by 10%
JavaScript
let products = [
{ name: "Keyboard", price: 150000 },
{ name: "Mouse", price: 80000 },
{ name: "Headset", price: 200000 }
];
let updatedProducts = products.map(p => {
return {
...p,
price: p.price * 1.1
};
});
console.log(updatedProducts);
Key insight:
map() returns a new array.
We keep data immutable like real devs.
🔥 Challenge 3 — Get Admin Users
JavaScript
let users = [
{ name: "Syfa", role: "admin", active: true },
{ name: "Rizal", role: "user", active: false },
{ name: "Dina", role: "admin", active: true }
];
let admins = users.filter(u => u.role === "admin");
console.log(admins);
This pattern shows up constantly in dashboards, permission systems, and API filtering.
🚀 Bonus — Active Admins Only
JavaScript
let activeAdmins = users.filter(
u => u.role === "admin" && u.active
);
console.log(activeAdmins);
Combining conditions = real-world logic.