Estoy tratando de eliminar un solo objeto del siguiente objeto de matrices. He probado con slice pero a veces no funciona. Es por eso que quiero probar diferentes métodos.
{
id: "6252de4b27082fd83b94e3f4",
options: [
{ title: "extra Tomato", price: 2 },
{ title: "ketchup", price: 1 },
{ title: "medium", price: 3 },
],
price: 5.1,
quantity: 1,
title: "Carroll Montgomery",
}
supongamos que quiero eliminar medium
el objeto, mi salida esperada sería:
{
id: "6252de4b27082fd83b94e3f4",
options: [
{ title: "extra Tomato", price: 2 },
{ title: "ketchup", price: 1 },
],
price: 5.1,
quantity: 1,
title: "Carroll Montgomery",
}
Solución del problema
Puedes intentar usar el Array.filter
método. Simplemente proporcione el título que desea eliminar y obtendrá la matriz eliminada. Al hacerlo, no mutamos la matriz original, sino que creamos una nueva con el valor eliminado.
const obj = {
id: '6252de4b27082fd83b94e3f4',
options: [
{ title: 'extra Tomato', price: 2 },
{ title: 'ketchup', price: 1 },
{ title: 'medium', price: 3 },
],
price: 5.1,
quantity: 1,
title: 'Carroll Montgomery',
}
obj.options = obj.options.filter((item) => item.title!== 'medium')
console.log(obj)
No hay comentarios.:
Publicar un comentario