Este tutorial demonstrará as abordagens para alterar o valor de um objeto dentro de uma matriz em JavaScript.
Como alterar/atualizar o valor de um objeto que está dentro de um array usando JavaScript?
Para alterar o valor de um objeto que está dentro de um array, use os seguintes métodos predefinidos de JavaScript:
Método 1: Alterar o valor do objeto que está dentro de uma matriz usando o método “findIndex ()”
Para alterar o valor de um objeto dentro do array, use a tecla “ encontrarIndex() ” método. Este método encontra o índice do elemento em uma matriz que atende a determinada condição. Para especificar a condição, ele usa uma função de retorno de chamada.
Sintaxe
Siga a sintaxe fornecida para alterar o valor de um objeto usando o método findIndex():
arrayObject. encontrarIndex ( obj => {
//doença
} ) ;
Exemplo
Crie um array que contenha diferentes objetos:
era arrObj = [ { eu ia : 5 , nome : 'Mayer' , idade : 25 } ,
{ eu ia : 9 , nome : 'Paulo' , idade : 26 } ,
{ eu ia : 12 , nome : 'Steven' , idade : vinte } ]
Chame o método findIndex() com a função callback que verifica o id dos objetos equivalente a “ 12 ”, e armazena o índice do objeto em uma variável “ getIndex ”:
const getIndex = arrObj. encontrarIndex ( obj => {retornar obj. eu ia === 12 ;
} ) ;
Altere o valor da propriedade “ idade ” de objeto:
arrObj [ getIndex ] . idade = 24 ;
Por fim, imprima a matriz atualizada de objetos no console:
console. registro ( 'A matriz de objeto atualizada é:' ) ;console. registro ( arrObj ) ;
A saída indica que o valor de “ idade ” do objeto cujo id é 12 foi alterado com sucesso de “ vinte ' para ' 24 ”:
Método 2: Alterar o valor do objeto que está dentro de uma matriz usando o método “map ()” com o operador Spread
Utilize o “ mapa() ” método com o “ operador de spread ” para alterar o valor do objeto dentro de uma matriz. “map()” é utilizado para criar um novo array chamando uma função em cada elemento de um array existente. Enquanto o operador spread permite espalhar ou copiar elementos do array em um novo array ou os argumentos de uma chamada de função. O método “map()” não modifica/muda o array original, mas gera um novo array com os elementos modificados.
Sintaxe
Para alterar o valor de um objeto usando o método map() com o operador spread, utilize a seguinte sintaxe:
se ( doença ) {
retornar { ... obj , chave : novo valor } ;
}
retornar obj ;
} ) ;
Exemplo
Chame o método map() com o operador spread para alterar o nome do objeto cujo id é “ 9 ”:
se ( obj. eu ia === 9 ) {
retornar { ... obj , nome : 'Alice' } ;
}
retornar obj ;
} ) ;
Imprima a matriz modificada do objeto no console:
console. registro ( newObjectArr ) ;A propriedade ' nome ” do objeto cujo id é “ 9 ” foi alterado de “ Paulo ' para ' Alice ”:
Método 3: Alterar o valor do objeto que está dentro de uma matriz usando o método “find ()”
Para alterar o valor de um objeto dentro de um array, use o comando “ encontrar() ” método. É utilizado para encontrar o elemento em uma matriz que atende a uma determinada condição. Ele gera o valor do elemento se satisfizer a condição. Caso contrário, dá “ indefinido , ” indicando que tal elemento não foi encontrado.
Sintaxe
Use a sintaxe fornecida para o método find() para localizar o elemento em uma matriz:
//doença
} ) ;
Exemplo
Invoque o método find() para encontrar o objeto cujo id é “ 5 ” e armazene o objeto em uma variável “ encontrarIndex ”:
retornar obj. eu ia === 5 ;
} ) ;
Verifique se a variável “findIndex” não é igual a “ indefinido ” significa que, se o objeto for encontrado, altere o valor da propriedade “ nome ” do objeto:
se ( encontrarIndex !== indefinido ) {findIndex. nome = 'John' ;
}
Finalmente, imprima o objeto no console:
console. registro ( encontrarIndex ) ;A saída exibe apenas o objeto especificado alterando seu valor:
Método 4: Alterar o valor do objeto que está dentro de uma matriz usando o loop “for-of”
Você também pode usar o “ para de ” loop para alterar o valor de um objeto dentro da matriz. Ele é usado para iterar sobre a matriz de objetos e verificar a condição para alterar o valor do objeto. Após acessar e alterar o valor do objeto, finalize o loop usando o comando “ quebrar ” palavra-chave.
Sintaxe
Siga a sintaxe fornecida para o loop “for-of”:
se ( doença ) {
//declaração
quebrar ;
}
}
Exemplo
Use o loop for-of e verifique o objeto cujo id é “ 5 ” e altere o “ idade ' para ' 27 ”:
se ( obj. eu ia === 5 ) {
obj. idade = 27 ;
quebrar ;
}
}
Imprima o objeto atualizado dentro do array no console:
console. registro ( arrObj ) ;Saída
Reunimos todas as informações essenciais relevantes para a alteração do valor de um objeto que está dentro da matriz em JavaScript.
Conclusão
Para alterar o valor de um objeto que está dentro de um array, use os métodos predefinidos do JavaScript, incluindo o “ encontrarIndex() , “ mapa() ” método com “ operador de spread ”, “ encontrar() ” ou o método “ para de ' laço. Esses métodos alteraram com sucesso os valores de um objeto dentro de uma matriz. Este tutorial demonstrou as diferentes abordagens para alterar o valor de um objeto que está dentro de um array em JavaScript.