Hola quiero cambiar un valor de propiedad de un objeto por otro valor de propiedad de otro objeto
Tengo dos matrices:
let arr1 = [{id:1, name:'test user', imageURL:''}, {id:1, name:'test user', imageURL:''}, {id:1, name:'test user 3', imageURL:''}]; let arr2 = [{id:1, name:'test user', imageURL:'abcdefghijklmnop'}];¿Cómo puedo establecer el valor imageURL de arr2 en arr1 imageURL por id en Typescript?
pseudocódigo: si la identificación en arr2 coincide con la identificación en arr1, establezca arr1.imageURL = arr2.imageURL
Información: No tengo permitido reemplazar el objeto completo.
Suponiendo que arr2 tiene un solo valor,
this.arr1.forEach((item) => { if(item.id == this.arr2[0].id) { item[imageUrl] = this.arr2[0].imageUrl } })Si arr2 tiene varios valores, también puede usar forEach en el mismo
let arr1 = [{id:1, name:'test user', imageURL:''}, {id:1, name:'test user', imageURL:''}, {id:1, name:'test user 3', imageURL:''}]; let arr2 = [{id:1, name:'test user', imageURL:'abcdefghijklmnop'}]; function setUrl(arr1, arr2, id) { let obj = arr2.find(prop => prop.id == id) if(!obj) return null; let response = arr1.map(prop => { if(prop.id === id) { prop.imageURL = obj.imageURL } return prop }) return response } let result = setUrl(arr1, arr2, 1) console.log(result)