Javascript, проходящий через объект - PullRequest
0 голосов
/ 26 сентября 2019

У меня есть объект, который возвращается через мой REST API, и мне нужно пройти через него для синхронизации БД.Таким образом, объект содержит другой объект, называемый таблицами.Объект таблиц имеет разные массивы с именами таблиц и их парами значений ключей.Я не мог пройти через объект table около двух дней, что бы я ни делал, и это действительно раздражает, возвращая нулевые или неопределенные значения.

Например, я попытался перебрать массив таблиц с помощью функции JavaScript object.forEach ((article) => console.log (article.id, article.name));

const obj = response.content.tables.article;

function findArticles(obj) {
    obj.forEach((article)=>console.log(article.id,article.name));

}

Я не могу вернуть значение.Когда я пытаюсь console.log (response.content);это показывает мне все.Как только я пытаюсь вывести response.content.tables, он сообщает undefined.

Это структура объекта response.content:

{
    "status": "1",
    "message": "sync out request successfull",
    "tables": {
        "article": [
          {
          "id": 1,
          "name": "baseball"
          },
          {
          "id": 2,
          "name": "truck"
          },
        ],
        "food": [],
        "animals: []
    }
}

Ответы [ 2 ]

1 голос
/ 26 сентября 2019

Попробуйте преобразовать ответ в объект, используя JSON.parse (xyz), прежде чем пытаться получить свойства.

var xyz = '{    "status": "1",  "message": "sync out request successfull",  "tables": {     "article": [{"id": 1,"name": "baseball"},{"id": 2,"name": "truck"}],"food": [],"animals": []}}'

var obj = JSON.parse(xyz);
$(obj.tables).each(function (ix, el) {
    console.log(el)
});
0 голосов
/ 26 сентября 2019

Я решил это так:

var obj = response.content;
var JSON = JSON.parse(obj);
var articleTable = JSON.tables.article;

articleTable.forEach((article)=>console.log(article.id,article.name));

После того, как я проанализировал объект response.content в JSON, он стал доступен для доступа к вложенным объектам в виде таблиц и статей.После передачи объекта article с переменной articleTable в forEach стало возможным получить доступ к каждому элементу.Теперь я получаю результаты.

Я очень ценю вашу помощь T3.0, она не смогла решить проблему без вас.

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