Oi Marcos!
Bora fazer uma analogia para entender melhor o funcionamento de uma função?
Imagine uma função como sendo uma receita.
receita_bolo (x ovos)
com x ovos conseguimos fazer 2x bolos
Essa receita nos diz o seguinte: quando temos x ovos, podemos fazer 2x bolos. Sendo assim, se dermos 1 ovo, fazemos 2 bolos. Com 2 ovos fazemos 4 bolos e assim por diante. Então vamos seguir a receita e fazer alguns bolos:
faz receita_bolo (5 ovos)
Fazendo dessa forma, iremos produzir 10 bolos, certo?
Agora, falando em termos de programação, uma função se comporta como uma receita. A função receita_bolo recebe um parâmetro x que é a quantidade de ovos. Esse valor é uma variável e você só irá utilizá-la quando for fazer um bolo.
Uma função pode receber vários parâmetros com diferentes nomes. No caso da função sorteia
, o parâmetro que ela recebe é o n
e esse parâmetro é um número que indica até que número máximo que poderá ser feito o sorteio.
No caso da receita, nós só fazemos o bolo quando chamamos a função por meio do faz receita_bolo(5 ovos). É nessa etapa onde você realmente envia os valores para a função e a função calcula os resultados que você deseja, no caso do exemplo da receita, é nesse momento que a quantidade de ovos deve ser enviada. O mesmo vale para a função sorteia, nela você vai sortear um número de 0
até n
e atribuir esse valor a numeroPensado
, e isso será feito nessa linha de código:
var numeroPensado = sorteia(10);
// sendo 10 o valor enviado para o parâmetro n da função sorteia
Sendo assim, podemos concluir que o intuito de utilizar uma função é justamente de não ter que mudar os valores manualmente conforme você fez nesses últimos exemplos. Mas, de enviar esses valores apenas quando formos chamar a função
Recomendo criar algumas funções e testar com valores diferentes. Pegue, por exemplo, uma função mais simples onde seja mais fácil prever o resultado do que vai acontecer:
function soma42 ( numero ) {
document.write( numero + 42 );
}
Quando você chamar essa função da seguinte forma: soma42( 12 )
o que vai acontecer? Tenta repetir esse exercício com outras funções que você conseguir imaginar e esse conteúdo vai se fixar rapidinho!
Espero ter ajudado :)
Qualquer dúvida vamos nos falando por aqui, tá bom?
Bons estudos!