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

Tạo một mảng đối tượng dựa trên một mảng đối tượng khác JavaScript

Giả sử, chúng ta có một mảng đối tượng chứa dữ liệu về lượt thích của một số người dùng như thế này -

const arr = [
   {"user":"dan","liked":"yes","age":"22"},
   {"user":"sarah","liked":"no","age":"21"},
   {"user":"john","liked":"yes","age":"23"},
 ];

Chúng tôi được yêu cầu viết một hàm JavaScript có trong một mảng như vậy. Hàm sẽ tạo một mảng khác dựa trên mảng này như thế này -

const output = [
   {"dan":"yes"},
   {"sarah":"no"},
   {"john":"yes"},
];

Ví dụ

const arr = [
   {"user":"dan","liked":"yes","age":"22"},
   {"user":"sarah","liked":"no","age":"21"},
    {"user":"john","liked":"yes","age":"23"},
];
const mapToPair = (arr = []) => {
   const result = arr.map(obj => {
      const res = {};
      res[obj['user']] = obj['liked'];
      return res;
   });
   return result;
};
console.log(mapToPair(arr));

Đầu ra

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

[ { dan: 'yes' }, { sarah: 'no' }, { john: 'yes' } ]