Вы можете использовать flatMap()
с вложенным map()
. Используйте flatMap()
для основного массива и внутри него, используйте map()
для y
свойства этого объекта. return
объект из внутренней map()
функции, у которой свойство y
будет другим и x
будет таким же
var arr = [{x:1,y:[1,2]},{x:2,y:[1,2]}];
const res = arr.flatMap(({x, y}) => y.map(y => ({x, y})));
console.log(res)
Если вы не понимаете, flatMap
ниже - это версия с использованием вложенного forEach
var arr = [{x:1,y:[1,2]},{x:2,y:[1,2]}];
const res = [];
arr.forEach(a => {
a.y.forEach(y => {
res.push({x: a.x, y});
})
})
console.log(res)