E aí Eduardo, tudo tranquilo?
Acredito que esteja no programa do jogo de adivinhar correto?
Então vou usar do exemplo do código pra explicar. Como o Maison falou, existem funções que retornam algo e funções que não. No início também me bati para entender o porquê.
Mas é bem simples, vejamos a função:
function sorteia(n){
return Math.round(Math.random() * n);
}
Sua execução depende de uma chamada, que fizemos assim:
var numero = sorteia(100);
Ok, sabemos que vai sortear um número entre 0 e 100. Porém, precisamos do retorno dessa função para executarmos as validações para frente, se precisamos fazer uma validação (if ) precisamos de um valor para isso.
if(chute == numero) {
mostra("Você acertou.");
} else if(chute > numero){
mostra("Você errou, seu chute é maior do que o número pensado.");
} else {
mostra("Você errou, seu chute é menor do que o número pensado.");
}
Se eu não tivesse um retorno, não teria como eu comparar chute == numero, logo que não haveria número nenhum para comparar.
Então o que acontece é algo assim:
var numero = sorteia (30);
A variável numero receberá o resultado do sorteio, que está passando o valor 30 (isso dará um número entre 0 e 30)
Tendo numero com um valor, é possível fazer a comparação chute == numero
Bom, por fim, no mesmo programa temos a função de pular linha:
function pulaLinha() {
document.write("<br>");
}
Essa é uma função que não precisa de nenhum parâmetro, a chamada dela é feita da seguinte forma (está dentro da função mostra):
pulaLinha();
Como só precisamos que o computador pule uma linha, não precisamos passar nenhum valor, e também não precisamos receber nenhum retorno para gravar em uma variável.
Me estendi mas acho que deu pra entender né?