Computer >> Máy Tính >  >> Lập trình >> Javascript

Lọc một đối tượng dựa trên một JavaScript mảng

Hãy cùng nói nào. chúng ta có một mảng và một đối tượng như thế này -

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

Chúng ta được yêu cầu viết một hàm nhận đối tượng và mảng và lọc bỏ tất cả các thuộc tính theobject không phải là một phần tử của mảng. Vì vậy, đầu ra chỉ nên chứa 3 đặc tính, đó là:“a”, “d” và “e”.

Hãy viết mã cho chức năng này -

Ví dụ

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);

Đầu ra

Đầu ra trong bảng điều khiển sẽ là -

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