Проблема с вызовом объекта JSON

#node.js #arrays #json #object

Вопрос:

У меня проблема с форматированием JSON, мой код, как показано ниже,

 const res =  JSON.stringify(results[1]);
 

мой результат,

 result {
     "0": {
         "name":"elezabeth",
          "job":"accountant"
       },
    "1": {
         "name":"anna",
         "job":"lawyer"
       }
}
 

Мне нужно назначить результат как

 details {
    {
    "name": "Elizabeth",
    "job": "accountant"
    },
    {
    "name": "anna",
    "job": "lawyer"
    }
}
 

кто-нибудь может дать представление об этом ?

Комментарии:

1. Является ли результат объектом или массивом? И является ли результат = результаты[1]? Также являются ли ключи «сведения» и «результат» именами объектов или переменных?

2. Ваш желаемый результат не является допустимой структурой данных JavaScript. Предполагается details , что это массив, а не объект? Если да, то, возможно, вы захотите const res = JSON.stringify(Object.values(results[1])) . См. раздел Object.values()

3. @Фил — спасибо за ваш ответ, это действительно сработало

Ответ №1:

Вы можете получить его в виде массива, подобного этому:

 const res =  JSON.stringify(Object.values(results[1]));


[
  { name: 'elezabeth', job: 'accountant' },
  { name: 'anna', job: 'lawyer' }
]
 

Вы не можете получить его как объект без ключей. (Я имею в виду «0» и «1» в вашем объекте.)