Как получить конкретные данные из массива объектов? - PullRequest
0 голосов
/ 09 мая 2018

Я новичок и хотел бы знать, как я могу получить конкретный объект из массива

У меня есть массив, который выглядит так:

data {
    "orderid": 5,
    "orderdate": "testurl.com",
    "username": "chris",
    "email": "",
    "userinfo": [
      {
        "status": "processing",
        "duedate": "" ,
      }
    ]
  },

Чтобы получить данные сверху, я бы сделал что-то вроде этого:

return this.data.orderid

Но как я могу пойти глубже и получить статус в userinfo?

 return this.data.orderid.userinfo.status

не работает ... у кого-нибудь есть идеи?

Ответы [ 4 ]

0 голосов
/ 09 мая 2018

Вам нужно перебрать data.userinfo (это массив)

var data = {
    "orderid": 5,
    "orderdate": "testurl.com",
    "username": "chris",
    "email": "",
    "userinfo": [
      {
        "status": "processing",
        "duedate": "" ,
      }
    ]
  };
  
data.userinfo.forEach(function(element) {
  console.log(element.status);
});
0 голосов
/ 09 мая 2018

Несколько баллов:

  • data не является массивом, это Объект (см. Фигурные скобки, массивы имеют квадратные скобки). Если быть точным, ваш синтаксис недопустим, но я предполагаю, что вы хотели ввести data = { ... }, а не data { ... }
  • Ваш синтаксис почти правильный, единственная ошибка, которую вы делаете, заключается в том, что userinfo - это массив, а массивы имеют числовые индексы (т. Е. array[0], array[1]). То, что вы ищете, это this.data.orderid.userinfo[0].status
0 голосов
/ 09 мая 2018

Используйте data.userinfo[0].status, чтобы получить значение (в вашем случае this.data.userinfo[0].status)

var data = {
    "orderid": 5,
    "orderdate": "testurl.com",
    "username": "chris",
    "email": "",
    "userinfo": [
      {
        "status": "processing",
        "duedate": "" ,
      }
    ]
  };
  console.log(data.userinfo[0].status);
0 голосов
/ 09 мая 2018

Информация о пользователе - это массив, поэтому вам необходимо получить к нему доступ с помощью индексатора, например:

return this.data.userinfo[0].status

MDN для массивов: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...