const coordinates = [
{position1: {x: 0, y: 0}, position2: {x: 0, y: 0}, position3: {x: 0, y: 0}},
{position1: {x:1, y: 1}, position2: {x: 1, y: 1}, position3: {x: 1, y: 1}},
{position1: {x: 2, y: 2}, position2: {x: 2, y: 2}, position3: {x: 2, y: 2}},
{position1: {x: 3, y: 3}, position2: {x: 3, y: 3}, position3: {x: 3, y: 3}},
{position1: {x: 4, y: 4}, position2: {x: 4, y: 4}, position3: {x: 4, y: 4}},
]
function deepCopy (arr) {
var out = [];
for (var i = 0, len = arr.length; i < len; i++) {
var item = arr[i];
var obj = {};
for (var k in item) {
if (typeof obj[k] == "object") {
obj[k] = deepCopy(item[key]);
} else {
obj[k] = item[k];
}
}
out.push(obj);
}
return out;
}
const newArray = deepCopy(coordinates).splice(3, 1,
{position1: {x: 7, y: 7}, position2: {x: 7, y: 7}, position3: {x: 7, y: 7}},
{position1: {x: 8, y: 8}, position2: {x: 8, y: 8}, position3: {x: 8, y: 8}}
)
Можете подсказать, правильно ли я делаю, сначала копирую исходный массив, потом через splice пытаюсь удалить 4ый элемент и вместо него добавить 2 новых объекта?