Hướng dẫn how to create nested array of objects in javascript - cách tạo mảng đối tượng lồng nhau trong javascript

Tôi có mảng dữ liệu đối tượng:

[
  {"company": "Google", "country": "USA", "employee": "John"},
  {"company": "Amazon", "country": "UK", "employee": "Arya"},
  {"company": "Google", "country": "KSA", "employee": "Cersi"},
  {"company": "Amazon", "country": "USA", "employee": "Tyrion"},
  {"company": "Amazon", "country": "USA", "employee": "Daenarys"},
  {"company": "Google", "country": "KSA", "employee": "Dothrokhi"}
]

Làm thế nào tôi có thể tạo một đối tượng lồng nhau như dưới đây?

{
  "Amazon": {
    "UK": {"Arya": null}, 
    "USA": {"Tyrion": null, "Daenarys": null}
  },
  "Google": {
    "KSA": {"Cersi": null, "Dothrokhi": null},
    "USA": {"John": null}
  }
}

Hãy nói rằng E có một ParentArray chứa nhiều mảng phụ mỗi cùng kích thước, mỗi mảng phụ là một mảng các đối tượng chứa hai thuộc tính: khóa và giá trị. Trong một SubArray, người ta đã xác nhận rằng hai đối tượng không thể có cùng một khóa nhưng tất cả các subarrays có cùng một cặp n phím trong đó n là kích thước của mảng phụ.

Công việc của chúng tôi là chuẩn bị một đối tượng có khóa làm khóa của các đối tượng và giá trị là một mảng chứa tất cả các giá trị cho khóa cụ thể đó.

Đây là mảng cha mẹ mẫu của chúng tôi -

const parentArray = [[
   {
      key: 123,
      value: 'India'
   }, {
      key: 124,
      value: 'USA'
   }, {
      key: 125,
      value: 'Japan'
   }, {
      key: 126,
      value: 'Denmark'
   }, {
         key: 127,
      value: 'Austria'
   },
], [
   {
      key: 124,
      value: 'Kenya'
   }, {
      key: 126,
      value: 'UK'
   }, {
      key: 123,
      value: 'Germany'
   }, {
      key: 127,
      value: 'Spain'
   }, {
      key: 125,
      value: 'Portugal'
   },
]];

Chúng tôi sẽ lặp lại trên mảng cha mẹ và sau đó tất cả các mảng phụ từng cái một và nếu chúng tôi tìm thấy một phím phù hợp, chúng tôi sẽ đẩy nó vào mảng giá trị nếu không chúng tôi tạo một mảng giá trị mới.

Mã đầy đủ cho điều này sẽ là -

Thí dụ

const parentArray = [[
   {
      key: 123,
      value: 'India'
   }, {
      key: 124,
      value: 'USA'
   }, {
      key: 125,
      value: 'Japan'
   }, {
      key: 126,
      value: 'Denmark'
   }, {
      key: 127,
      value: 'Austria'
   },
], [
   {
      key: 124,
      value: 'Kenya'
   }, {
      key: 126,
      value: 'UK'
   }, {
      key: 123,
      value: 'Germany'
   }, {
      key: 127,
      value: 'Spain'
   }, {
      key: 125,
      value: 'Portugal'
   },
]];
const map = {};
parentArray.forEach[arr => {
   arr.forEach[obj => {
      const { key, value } = obj;
      if[map[key]]{
         map[key].push[value];
      }else{
         map[key] = [value]
      }
   }]
}];
console.log[map];

Đầu ra

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

{
   '123': [ 'India', 'Germany' ],
   '124': [ 'USA', 'Kenya' ],
   '125': [ 'Japan', 'Portugal' ],
   '126': [ 'Denmark', 'UK' ],
   '127': [ 'Austria', 'Spain' ]
}

Cập nhật vào ngày 19 tháng 8 năm 2020 07:00:09

  • Câu hỏi và câu trả lời liên quan
  • Giá trị gia tăng MongoDB bên trong mảng lồng nhau?
  • Nhóm mảng giá trị lồng nhau trong khi so sánh 2 đối tượng - JavaScript
  • Giá trị mongDB tăng lên bên trong một mảng lồng nhau
  • Làm thế nào để nhóm mảng các đối tượng bằng ID trong JavaScript?
  • Đối tượng nhóm theo tài sản trong JavaScript
  • Làm thế nào để chuyển đổi các cặp mảng lồng nhau thành các đối tượng trong một mảng trong JavaScript?
  • JavaScript mảng. Bao gồm bên trong mảng lồng nhau trả về false
  • Truy cập các đối tượng JavaScript lồng nhau với phím Chuỗi
  • Cách nhóm một mảng các đối tượng theo khóa trong JavaScript
  • Đơn giản hóa mảng lồng nhau JavaScript
  • Truy cập các đối tượng từ cấu trúc đối tượng lồng nhau trong MongoDB
  • Cách sắp xếp một mảng các đối tượng dựa trên độ dài của một mảng lồng nhau trong JavaScript
  • Làm thế nào để truy cập các đối tượng JSON lồng nhau trong JavaScript?
  • Các tham số mặc định của ES6 trong các đối tượng lồng nhau - JavaScript
  • Sắp xếp mảng lồng nhau chứa các đối tượng tăng dần và giảm dần theo ngày trong JavaScript

Bạn có thể làm tổ trong JavaScript không?

Mảng lồng trong JavaScript được định nghĩa là mảng [mảng ngoài] trong một mảng khác [mảng bên trong]. Một mảng có thể có một hoặc nhiều mảng bên trong. Các mảng lồng nhau này [mảng bên trong] nằm trong phạm vi của mảng bên ngoài có nghĩa là chúng ta có thể truy cập vào các phần tử mảng bên trong này dựa trên tên đối tượng mảng bên ngoài.. An Array can have one or more inner Arrays. These nested array [inner arrays] are under the scope of outer array means we can access these inner array elements based on outer array object name.

Bạn có thể làm tổ đối tượng trong JavaScript?

JavaScript có thể lưu trữ dữ liệu thông qua các cặp giá trị khóa. Các cặp giá trị khóa được liên kết với các đối tượng JavaScript. Các đối tượng chứa các thuộc tính có thể được lưu trữ trong các đối tượng lồng nhau. Các đối tượng lồng nhau này được tạo trong các đối tượng khác và được truy cập thông qua ký hiệu dấu chấm hoặc khung.Objects contain properties that can be stored in nested objects. These nested objects are created within other objects and accessed through dot or bracket notation.

Bạn có thể có một mảng các đối tượng trong JavaScript không?

Các phần tử mảng có thể là các biến JavaScript có thể là đối tượng.Mảng là các loại đối tượng đặc biệt.Bởi vì điều này, bạn có thể có các biến các loại khác nhau trong cùng một mảng. JavaScript variables can be objects. Arrays are special kinds of objects. Because of this, you can have variables of different types in the same Array.

{} Và [] trong javascript là gì?

{} là tốc ký để tạo một đối tượng trống.Bạn có thể coi đây là cơ sở cho các loại đối tượng khác.Đối tượng cung cấp liên kết cuối cùng trong chuỗi nguyên mẫu có thể được sử dụng bởi tất cả các đối tượng khác, chẳng hạn như một mảng.[] là tốc ký để tạo ra một mảng trống.. You can consider this as the base for other object types. Object provides the last link in the prototype chain that can be used by all other objects, such as an Array . [] is shorthand for creating an empty array.

Bài Viết Liên Quan

Chủ Đề