как пройти через объект JSON с машинописью Angular5, которая возвращает массив объектов - PullRequest
0 голосов
/ 27 апреля 2018

это мой код json, который возвращает массив «Customers», который содержит объекты и массивы внутри объектов

Это мой json cod:

{
  "Customers": [
    {
      "customerData": {
        "secondLastName": "Apale",
        "firstLastName": "Lara",
        "phoneNumber": "2711292033",
        "address": "Calle X avenida Y #100",
        "paymentCapacity": 18000,
        "gender": "Femenino",
        "name": "Yessica",
      },
      "orders": [
        {
          "amount": 34371,
          "term": "2017-07-21T17:32:28Z",
          "payment": 1423,
          "id": 12345678,
          "calculationDate": "2017-07-21T17:32:28Z",
          "products": [
            {
              "SKUNumber": 28005417,
              "quantity": 1,
              "SKULineDescription": "Computadoras",
              "SKUDescription": "Laptop HP",
              "SKULineId": 4
            }
          ]
        }
      ]
    },
    {
      "customerData": {
        "secondLastName": "González",
        "firstLastName": "Pineda",
        "phoneNumber": "55678420",
        "address": "Calle 26 #4732 Col. Pradera",
        "paymentCapacity": 180,
        "gender": "Femenino",
        "name": "María",
      },
      "orders": [
        {
          "amount": 34371,
          "term": "2017-07-21T17:32:28Z",
          "payment": 1423,
          "id": 12678422,
          "calculationDate": "2017-07-21T17:32:28Z",
          "products": [
            {
              "SKUNumber": 28005417,
              "quantity": 1,
              "SKULineDescription": "Computadoras",
              "SKUDescription": "Laptop HP",
              "SKULineId": 4
            }
          ]
        }
      ]
    }
  ]
}

это объявление моего массива: arrCustomers = new Array (); Я пытаюсь перебрать JSON с foreach, и у меня есть ошибка, которая говорит: undefined, это моя консоль enter image description here

1 Ответ

0 голосов
/ 27 апреля 2018

Полагаю, у вас возникли проблемы с доступом к элементам массива и объектов. Если это так, то это может вам помочь.

Кроме того, запустите те фрагменты, которые прокомментированы.

Вы можете получить доступ к атрибуту объектов двумя способами, один из них использует оператор точки (.), А другой - в примере.

var array = {
  "Customers": [
    {
      "customerData": {
        "secondLastName": "Apale",
        "firstLastName": "Lara",
        "phoneNumber": "2711292033",
        "address": "Calle X avenida Y #100",
        "paymentCapacity": 18000,
        "gender": "Femenino",
        "name": "Yessica",
      },
      "orders": [
        {
          "amount": 34371,
          "term": "2017-07-21T17:32:28Z",
          "payment": 1423,
          "id": 12345678,
          "calculationDate": "2017-07-21T17:32:28Z",
          "products": [
            {
              "SKUNumber": 28005417,
              "quantity": 1,
              "SKULineDescription": "Computadoras",
              "SKUDescription": "Laptop HP",
              "SKULineId": 4
            }
          ]
        }
      ]
    },
    {
      "customerData": {
        "secondLastName": "González",
        "firstLastName": "Pineda",
        "phoneNumber": "55678420",
        "address": "Calle 26 #4732 Col. Pradera",
        "paymentCapacity": 180,
        "gender": "Femenino",
        "name": "María",
      },
      "orders": [
        {
          "amount": 34371,
          "term": "2017-07-21T17:32:28Z",
          "payment": 1423,
          "id": 12678422,
          "calculationDate": "2017-07-21T17:32:28Z",
          "products": [
            {
              "SKUNumber": 28005417,
              "quantity": 1,
              "SKULineDescription": "Computadoras",
              "SKUDescription": "Laptop HP",
              "SKULineId": 4
            }
          ]
        }
      ]
    }
  ]
}

console.log("the whole array ==>",array);
//console.log("customers attribute ==>",array["Customers"]);
//console.log("first customerData ==>",array["Customers"][0]);
//console.log("first customerData's order ==>",array["Customers"][0]["orders"]);
//console.log("first customerData's all products ==>",array["Customers"][0]["orders"].map(i => i["products"]));
//console.log("All customerDatas", array["Customers"].map(i => i["customerData"]));
//console.log("All orders", array["Customers"].map(i => i["orders"]));
//console.log("All orders of all customers", array["Customers"].map(i => i["orders"]));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...