สมมติว่าเรามีอาร์เรย์ของออบเจกต์ดังนี้
const arr = [
{ id : "23", name : "Item 1", isActive : true},
{ id : "25", name : "Item 2", isActive : false},
{ id : "26", name : "Item 3", isActive : false},
{ id : "30", name : "Item 4", isActive : true},
{ id : "45", name : "Item 5", isActive : true}
];เราต้องเขียนฟังก์ชัน JavaScript ที่รับออบเจกต์ดังกล่าวและคืนค่าอาร์เรย์ของค่า property "id" ของออบเจกต์ทั้งหมดที่มีค่า true สำหรับ property "isActive"
ตัวอย่างโค้ด
โค้ดสำหรับการทำงานนี้จะเป็นดังนี้
const arr = [
{ id : "23", name : "Item 1", isActive : true},
{ id : "25", name : "Item 2", isActive : false},
{ id : "26", name : "Item 3", isActive : false},
{ id : "30", name : "Item 4", isActive : true},
{ id : "45", name : "Item 5", isActive : true}
];
const findActive = (arr = []) => {
const res = [];
for(let i = 0; i < arr.length; i++){
const obj = arr[i];
const {
id,
isActive
} = obj;
if(isActive){
res.push(id);
}
};
return res;
};
console.log(findActive(arr));ผลลัพธ์
ผลลัพธ์ในคอนโซลจะเป็นดังนี้
[ '23', '30', '45' ]