Извлечь данные при парсинге Node.js

121
04 мая 2019, 13:10

При парсинге я получаю ответ в таком виде:

{
    data: {
        type: 'match',
        id: 'ae825686-8a74-4363-a1d1-402d5a4207d5',
        attributes: {
            createdAt: '2018-11-20T17:06:52Z',
            titleId: 'bluehole-pubg',
            shardId: 'pc-ru',
            tags: null,
            seasonState: 'progress',
            duration: 1823,
            stats: null,
            gameMode: 'squad-fpp'
        },
    }
    included:
    [{
            type: 'participant',
            id: '0b1b8f78-bb3e-4c0a-9955-9fdf8e33e5b4',
            attributes: [Object]
        }, {
            type: 'participant',
            id: '85e74b88-125b-4529-8c3f-fd76bd43b9aa',
            attributes: [Object]
        }, {
            type: 'roster',
            id: '6db70dce-b056-4bed-8cc4-6521b83bea50',
            attributes: [Object],
            relationships: [Object]
        }, {
            type: 'roster',
            id: 'a35db9ae-e559-4474-b922-784e3221f484',
            attributes: [Object],
            relationships: [Object]
        }
    ]
}

Мне нужно получить данные с inculded type:'roster' и содержимого объектов attributes, relationships. Как мне это сделать?
Я пробовал извлекать как массив данных console.log(included[0]); Получаю данные с type: 'participant'.
Затем пробовал так console.log(included[{type: 'roster', relationships}]); В ответ получаю сообщение undefined
Подскажите пожалуйста как получить нужные данные, 3-й день ломаю голову. Спасибо.

Answer 1

included - это массив. поэтому обращаясь к нему - по индексу: included[0] - вы получаете объект по индексу 0.

Соотвественно: пусть jsonObj - это тот объект, который отображен у вас в листинге;

var included = jsonObj.included;
var obj = included[0];
var type = obj.type;
var relationships = obj.relationships;
var itemRelationship = relationships[0];

т.к. не во всех объектах массива included содержится relationships - то там будет undefined

READ ALSO
Отображать children при v-html (vue)

Отображать children при v-html (vue)

В своем vue-компоненте я использую следующую конструкцию:

177
Как передать методом post ответы на вопросы?

Как передать методом post ответы на вопросы?

Вообщем друзья помогите есть такой вот код:

160
MySQL TRIGGER update table

MySQL TRIGGER update table

Нужно тригером обновлять ту же таблицу, точнее одно ее поле и вписать туда количество заполненых полей - в строку где IBLOCK_PROPERTY_ID = 35 нужно вписать...

147