Tengo una matriz como la siguiente
const arr = [ { id: "first", val: 'ganguly', }, { id: "third", val: 'sachin', }, ] const selectedVaue ='dhoni';si la identificación coincide con 'tercero', entonces valor para reemplazar a clave particular
const list = arr.filter(data => data.id === 'third'); if (list.length > 0 ) { // code }El resultado esperado se encuentra a continuación:
const arr = [ { id: "first", val: 'ganguly', }, { id: "third", val: 'dhoni', }, ]Puede usar Array.prototype.map y crear una nueva matriz con el valor con id "third" reemplazado.
const arr = [ { id: "first", val: "ganguly" }, { id: "third", val: "sachin" }, ]; const selectedValue = "dhoni"; const res = arr.map((a) => a.id === "third" ? { ...a, val: selectedValue } : a ); console.log(res);O puede usar Array.prototype.forEach si desea reemplazar el objeto en su lugar.
const arr = [ { id: "first", val: "ganguly" }, { id: "third", val: "sachin" }, ]; const selectedValue = "dhoni"; arr.forEach((a, i) => { if (a.id === "third") { arr[i] = { ...a, val: selectedValue }; } }); console.log(arr);