Вот решение с использованием Array.prototype.flatMap
и Array.prototype.map
:
const obj = {
"products": [{
"code": "realestate",
"currency": "ILS",
"percentage": 1,
"totalWorth": 150000,
"totalYieldPer": 0,
"items": [{
"name": "הבית שלנו בחיפה ",
"currency": "NIS",
"geo": "ישראל",
"worth": 150000,
"portfolioPer": 0.022,
"yield": 0,
"yieldPer": 0
}, {
"name": "הבית שלנו בארהבב",
"currency": "USD",
"geo": "ארהב",
"worth": 5261700,
"portfolioPer": 0.761,
"yield": 0,
"yieldPer": 0
}, {
"name": "דירהב אירופה",
"currency": "NIS",
"geo": "אירופה",
"worth": 5261700,
"portfolioPer": 0.761,
"yield": 0,
"yieldPer": 0
}
]
}, {
"items": [{ "geo": "Some other geo" }]
}
]
};
const result = obj.products.flatMap(({ items }) => items).map(({ geo }) => geo);
console.log(result);
Я предполагаю, что ваш исходный объект содержит более одного элемента в массиве products
, поэтому я добавил один для примера.