Вот пример того, как вы можете удалить элемент из массива в JavaScript, используя его свойство id:

const array = [{id: 1, name: 'John'}, {id: 2, name: 'Jane'}, {id: 3, name: 'Jack'}];

function deleteById(array, id) {
  for (let i = 0; i < array.length; i++) {
    if (array[i].id === id) {
      array.splice(i, 1);
      break;
    }
  }
}
deleteById(array, 2);
// array is now [{id: 1, name: 'John'}, {id: 3, name: 'Jack'}]

Эта функция принимает массив и id в качестве аргументов, а затем перебирает массив в поисках объекта с соответствующим свойством id. Когда он находит совпадение, он удаляет объект из массива, используя метод splice().

Вот пример того, как вы можете использовать вышеуказанную функцию в компоненте React или Next.js для удаления элемента из массива:

import React, { useState } from 'react';

function MyComponent() {
  const [array, setArray] = useState([{id: 1, name: 'John'}, {id: 2, name: 'Jane'}, {id: 3, name: 'Jack'}]);
  function deleteById(id) {
    for (let i = 0; i < array.length; i++) {
      if (array[i].id === id) {
        array.splice(i, 1);
        break;
      }
    }
    setArray([...array]);
  }
  return (
    <div>
      {array.map(item => (
        <div key={item.id}>
          <span>{item.name}</span>
          <button onClick={() => deleteById(item.id)}>Delete</button>
        </div>
      ))}
    </div>
  );
}

Этот компонент отображает список объектов в переменной состояния array и отображает свойство name каждого объекта в элементе span. Он также включает кнопку Delete для каждого объекта, при нажатии на которую вызывается функция deleteById() и передается id объекта в качестве аргумента. Затем функция deleteById() удаляет объект из array с помощью метода splice() и обновляет состояние с помощью функции setArray().