"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo encontrar y reemplazar un objeto en una matriz de JavaScript según una propiedad específica?

¿Cómo encontrar y reemplazar un objeto en una matriz de JavaScript según una propiedad específica?

Publicado el 2025-01-06
Navegar:463

How to Find and Replace an Object in a JavaScript Array Based on a Specific Property?

Encontrar un objeto con una propiedad específica en una matriz de objetos

En Javascript, se puede buscar un objeto en particular en una matriz de objetos sin nombre objeto basado en una coincidencia de valor de propiedad. Considere la siguiente matriz:

var array = [
    { name:"string 1", value:"this", other: "that" },
    { name:"string 2", value:"this", other: "that" }
];

Encontrar el objeto:

Para encontrar el objeto con la propiedad "nombre" establecida en "cadena 1", utilice el método find(). La sintaxis es:

let obj = arr.find(o => o.name === 'string 1');

Este código itera a través de la matriz y devuelve el primer objeto donde la condición o.name === 'cadena 1' es verdadera. El obj resultante contendría los siguientes datos:

{ name:"string 1", value:"this", other: "that" }

Reemplazando el objeto encontrado:

Una vez que se encuentra el objeto, se puede reemplazar con una versión editada. Para hacer esto, use el método findIndex() para obtener el índice del objeto dentro de la matriz:

let index = array.findIndex(o => o.name === 'string 1');

Luego, use el método splice() de la matriz para reemplazar el objeto en ese índice:

array.splice(index, 1, { new_name: "string 1", new_value: "updated" });

Ahora, la matriz contendrá el objeto actualizado:

[
    { name:"string 1", value:"updated", other: "that" },
    { name:"string 2", value:"this", other: "that" }
]
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3