Hướng dẫn get data from nested array javascript - lấy dữ liệu từ javascript mảng lồng nhau

Làm thế nào tôi có thể lấy ID từ một mảng lồng nhau? Ban đầu tôi nhận được phản hồi JSON như vậy và tôi cần nhận tất cả ID từ tất cả các mảng lồng nhau. Có ai có thể giúp tôi ở đây không? Tôi có nên sử dụng bộ lọc hay bất kỳ chức năng tìm kiếm nào không? Một ví dụ hoặc giải thích có thể là tuyệt vời.
Initially I get such json response and I need to get all ids from all nested arrays. Anybody can help me out here? Should I use filter or any of find functions? An example or explanation could be great.

{
    "id": 271,
    "name": "anything",
    "description": null,
    "entries": [
        {
            "id": "fda2afe0-dfc4-4373-9e50-8b140a46f25e",
            "name": "first occurence",
            "runs": [
                {
                    "id": 284,
                    "name": "the element from which I want to get id",
                    "description": null,
                    "created_on": 1530627823,
                    "created_by": 2
                },
                {
                    "id": 285,
                    "name": "element for id 2",
                    "created_by": 2
                },
                {
                    "id": 296,
                    "name": "element for id 3",
                    "created_on": 1530710993,
                    "created_by": 2
                }
            ]
        },
        {
            "id": "a65dd3f0-3fc1-4f93-9123-f5a05ae50703",
            "name": "second occurence",
            "runs": [
                {
                    "id": 272,
                    "name": "element for id 4",
                    "created_by": 2,
                },
                {
                    "id": 273,
                    "created_by": 2,
                },
                {
                    "id": 274,
                    "created_by": 2,
                }
            ]
        }
    ]
}

Bạn có thể truy cập một mảng các đối tượng lồng nhau bằng cách sử dụng ký hiệu dấu chấm hoặc ký hiệu khung. JavaScript chỉ có một loại dữ liệu có thể chứa nhiều giá trị: đối tượng. Một mảng là một dạng đặc biệt của một đối tượng.Object. An Array is a special form of an object.

[Trơn] Hình thức đối tượng

{key: value, key: value, ...}

Mảng mẫu

[value, value, ...]

Cả mảng và đối tượng hiển thị cấu trúc key -> value. Các phím trong một mảng phải là số, trong khi bất kỳ chuỗi nào cũng có thể được sử dụng làm khóa trong các đối tượng. Các cặp giá trị khóa cũng được gọi là các thuộc tính trên mạng.“properties”.

Thuộc tính truy cập bằng cách sử dụng ký hiệu dấu chấmdot notation

const value = obj.someProperty;

Mảng truy cập bằng ký hiệu khung, nếu tên thuộc tính không phải là tên nhận dạng JavaScript hợp lệ [spec] hoặc tên là giá trị của một biến:bracket notation, if the property name would not be a valid JavaScript identifier name [spec], or the name is the value of a variable:

// the space is not a valid character in identifier names
const value = obj["some Property"];

// property name as variable
const name = "some Property";
const value = obj[name];

Vì lý do đó, các phần tử mảng chỉ có thể được truy cập bằng ký hiệu khung:

const value = arr[5]; // arr.5 would be a syntax error

// property name / index as variable
const x = 5;
const value = arr[x];

Những gì về JSON?

JSON là một đại diện văn bản của dữ liệu, giống như XML, YAML, CSV và các loại khác. Để làm việc với dữ liệu đó, trước tiên nó phải được chuyển đổi thành các loại dữ liệu JavaScript, tức là các mảng và đối tượng.

Nguồn: stackoverflow.com/: stackoverflow.com/

Mã ví dụ đơn giản truy cập các đối tượng lồng nhau JavaScript. Giá trị là một mảng, để truy cập phần tử thứ hai của nó, sử dụng ký hiệu khung và chúng tôi sử dụng ký hiệu DOT một lần nữa để truy cập thuộc tính name.





  
   const data = {
    code: 42,
    items: [{
      id: 1,
      name: 'foo'
    }, {
      id: 2,
      name: 'bar'
    }]
  };

  const item_name = data.items[1].name;
  
  console.log[item_name]
  console.log[data.items[1]]




Output::

Giải thích đơn giản:

var data = {
    code: 42,
    items: [{
        id: 1,
        name: 'foo'
    }, {
        id: 2,
        name: 'bar'
    }]
};

/*
 1. `data` is object contain `items` object*/
console.log[data];

/*
 2. `items` object contain array of two objects as elements*/
console.log[data.items];

/*
 3. you need 2nd element of array - the `1` from `[0, 1]`*/
console.log[data.items[1]];

/*
 4. and you need value of `name` property of 2nd object-element of array]*/
console.log[data.items[1].name];

Hãy bình luận nếu bạn có bất kỳ nghi ngờ hoặc đề xuất nào về chủ đề mảng lồng nhau này.

Lưu ý: & nbsp; The & nbsp; tất cả các ví dụ JS & nbsp; is & nbsp; được kiểm tra trên trình duyệt firefox và trình duyệt Chrome. The All JS Examples codes are tested on the Firefox browser and the Chrome browser.

Hệ điều hành: & nbsp; windows 10Windows 10

Mã: Phiên bản HTML 5

Bằng cấp về Khoa học máy tính và Kỹ sư: Nhà phát triển ứng dụng và có nhiều ngôn ngữ lập trình kinh nghiệm. Sự nhiệt tình cho công nghệ và thích học kỹ thuật.

Bài Viết Liên Quan

Chủ Đề