Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

การกรองอาร์เรย์ของวัตถุใน JavaScript


สมมติว่าเรามีตัวอักษรและวัตถุสองอาร์เรย์ตามลำดับ -

const source = [1, 2, 3 , 4 , 5];
const cities = [{ city: 4 }, { city: 6 }, { city: 8 }];

เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่ใช้ในสองอาร์เรย์นี้ ฟังก์ชันของเราควรสร้างอาร์เรย์ใหม่ที่มีองค์ประกอบทั้งหมดจากอาร์เรย์ของวัตถุที่มีค่าสำหรับคีย์ "เมือง" อยู่ในอาร์เรย์ของตัวอักษร

ตัวอย่าง

ให้เราเขียนโค้ด -

const source = [1, 2, 3 , 4 , 5];
const cities = [{ city: 4 }, { city: 6 }, { city: 8 }];
const filterByLiterals = (objArr, literalArr) => {
   const common = objArr.filter(el => {
      return literalArr.includes(el['city']);
   });
   return common;
};
console.log(filterByLiterals(cities, source));

ผลลัพธ์

และผลลัพธ์ในคอนโซลจะเป็น −

[ { city: 4 } ]