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

กรองวัตถุตามอาร์เรย์ JavaScript


สมมติว่า เรามีอาร์เรย์และวัตถุเช่นนี้ −

const arr = ['a', 'd', 'f'];
const obj = {
   "a": 5,
   "b": 8,
   "c": 4,
   "d": 1,
   "e": 9,
   "f": 2,
   "g": 7
};

เราจำเป็นต้องเขียนฟังก์ชันที่รับออบเจ็กต์และอาร์เรย์ และกรองคุณสมบัติของออบเจกต์ที่ไม่ใช่องค์ประกอบของอาร์เรย์ออกไป ดังนั้น ผลลัพธ์ควรมีเพียง 3 คุณสมบัติ กล่าวคือ:“a”, “d” และ “e”

มาเขียนโค้ดสำหรับฟังก์ชันนี้กัน −

ตัวอย่าง

const arr = ['a', 'd', 'f'];
const obj = {
   "a": 5,
   "b": 8,
   "c": 4,
   "d": 1,
   "e": 9,
   "f": 2,
   "g": 7
};
const filterObject = (obj, arr) => {
   Object.keys(obj).forEach((key) => {
      if(!arr.includes(key)){
         delete obj[key];
      };
   });
};
filterObject(obj, arr);
console.log(obj);

ผลลัพธ์

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

{ a: 5, d: 1, f: 2 }