Добавление и изменение объекта в массиве?

В React, добавление и изменение объекта в массиве может быть сделано с использованием нескольких различных подходов. Вот некоторые из них:

1. Обновление массива с использованием метода push():

const myArray = [...]; // начальный массив
const newItem = {...}; // новый объект, который нужно добавить

myArray.push(newItem); // добавляем новый объект в конец массива

// либо
const updatedArray = [...myArray, newItem]; // создаем новый массив с добавленным объектом

2. Обновление массива с использованием метода concat():

const myArray = [...]; // начальный массив
const newItem = {...}; // новый объект, который нужно добавить

const updatedArray = myArray.concat(newItem); // создаем новый массив с добавленным объектом

3. Обновление массива с использованием разворачивания/расширения оператора (...):

const myArray = [...]; // начальный массив
const newItem = {...}; // новый объект, который нужно добавить

const updatedArray = [...myArray, newItem]; // создаем новый массив с добавленным объектом

4. Обновление массива с использованием функционального подхода и метода map():

const myArray = [...]; // начальный массив
const index = 2; // индекс элемента, который нужно изменить
const updatedItem = {...}; // обновленный объект

const updatedArray = myArray.map((item, idx) => {
  if (idx === index) {
    return updatedItem; // заменяем элемент с заданным индексом на обновленный объект
  }
  return item;
});

5. Обновление массива с использованием функции splice():

const myArray = [...]; // начальный массив
const index = 2; // индекс элемента, который нужно изменить
const updatedItem = {...}; // обновленный объект

const updatedArray = [...myArray]; // создаем копию начального массива
updatedArray.splice(index, 1, updatedItem); // заменяем элемент с заданным индексом на обновленный объект

Важно отметить, что все эти подходы создают новый массив или новый объект, а не изменяют исходные данные напрямую. Это важно для иммутабельности данных в React.