/ / lodash карта декількох масивів об'єктів - javascript, ecmascript-6, lodash

логічна карта декількох масивів об'єктів - javascript, ecmascript-6, лодаш

У мене є json з кількома масивами об’єктів.

{
"results":[{
"id_pk": "1",
"bookings": [{
"id": 1,
"id": 2,
}]
},{
"id_pk": "2",
"bookings": [{
"id": 3,
"id": 4,
}]
},{
"id_pk": "3",
"bookings": [{
"id": 5,
"id": 6,
}]
}]
}

і моя мета - отримати ідентифікатор кожного "id_pk" за допомогою _.map () квартир

і мій код виглядає приблизно так. Це правильний формат, як отримати ідентифікатор?

_.map(results, (r) => _.map(r.bookings, "id") )

Відповіді:

0 для відповіді № 1

Ви могли отримати все id значення за рахунок зменшення зовнішнього масиву та відображення всіх id від booking масив та приєднати ідентифікатор нового об’єкта.

var data = { results: [{ id_pk: "1", bookings: [{ id: 1 }, { id: 2 }] }, { id_pk: "2", bookings: [{ id: 3 }, { id: 4 }] }, { id_pk: "3", bookings: [{ id: 5 }, { id: 6 }] }] },
ids = data.results.reduce((r, a, i) => (r[i] = a.bookings.map(b => b.id).join(), r), {});

console.log(ids);