Olá, Andre! Tudo bem?
O conceito de parâmetros em funções pode ser um pouco confuso no início, mas vou tentar esclarecer da melhor maneira possível.
No JavaScript, quando você cria uma função, você pode definir parâmetros para ela. Esses parâmetros são como variáveis que só existem dentro do escopo da função. Eles são usados para passar valores para a função quando ela é chamada.
No seu exemplo, você está usando a função filter()
que é um método de arrays no JavaScript. Essa função recebe uma função como argumento, chamada para cada elemento do array. O parâmetro dessa função (no seu caso, endereço
) representa o elemento atual que está sendo processado no array.
const listaApenasApartamentos = cliente.endereços.filter(
(endereço) => endereço.apartamento === true
)
Nesse caso, endereço
é um parâmetro que representa cada objeto dentro do array cliente.endereços
. A função filter()
vai iterar por cada objeto (ou "endereço") no array cliente.endereços
e aplicar a função que você passou como argumento. Se a função retornar true
, o endereço
atual é incluído no novo array. Se retornar false
, ele é excluído.
Portanto, não há uma substituição interna da string "endereço" por alguma informação contida no "objeto endereços". O que acontece é que "endereço" é um nome de parâmetro que você escolheu para representar cada item (neste caso, cada objeto de endereço) na array cliente.endereços
enquanto a função filter()
itera através dele.
Espero ter esclarecido as suas dúvidas e caso tenha mais perguntas, estarei à disposição.
Grande abraço e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.