Já que o array é "amigos" por que a função embaralhar tem como parâmetro lista e não amigos? Se a lista não tivesse o nome lista também daria certo?
Já que o array é "amigos" por que a função embaralhar tem como parâmetro lista e não amigos? Se a lista não tivesse o nome lista também daria certo?
Bom dia!
Funções são blocos de construção fundamentais em JavaScript. Uma função é um procedimento de JavaScript - um conjunto de instruções que executa uma tarefa ou calcula um valor. Para usar uma função, você deve defini-la em algum lugar no escopo do qual você quiser chamá-la.
Parâmetros primitivos (como um número) são passados para as funções por valor; o valor é passado para a função, mas se a função altera o valor do parâmetro, esta mudança não reflete globalmente ou na função chamada.
Se você passar um objeto (ou seja, um valor não primitivo, tal como Array ou um objeto definido por você) como um parâmetro e a função alterar as propriedades do objeto, essa mudança é visível fora da função.
Por isso no seu caso, a função recebe uma "referencia" do seu objeto e irá trabalhar em cima dela. O nome do parâmetro que a função recebe é indiferente, e só funcionará no escopo da função.
Espero ter ajudado. Se sua dúvida foi sanada, marque este tópico como solucionado.
Bons estudos!