Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Dúvida no RETURN

Olá Pessoal,

Estou com dúvida em relação à utilização do return, no exemplo abaixo, retornou um valor booleano para verificar se a posição y do ator era menor do que a posição inicial 366.

function podeSeMover(){
  return yAtor < 366;
}

Essa função foi usada na função da movimentação do ator:

function movimentaAtor(){
  if (keyIsDown(UP_ARROW)){
    yAtor -= 3;    
  }
  if (keyIsDown(DOWN_ARROW)){
    if (podeSeMover()){
      yAtor += 3;    
    }
  }
}

mas ele só funciona quando for verdadeiro?

Não entendi muito bem em qual outro contexto eu conseguiria utilizar o return.

1 resposta
solução!

Olá Daniel, tudo bem?

O return ele serve para retornar um valor seja ele verdadeiro ou falso, um número positivo ou negativo, ou até mesmo uma string, no caso da função movimentaAtor() ela solicita para a função podeSeMover um valor, o return se torna um mensageiro, e diz “olha aquela função(podeSeMover) fez os devidos cálculos, mandou lhe falar que é verdade” a função movimenta ator entende o recado e sabe que ela pode ser executada, possibilitando que o personagem se mova, ou seja, o return dá o recado agora vai depender da função o que vai ser feito a partir daquele recado.

A palavra reservada return é utilizada em muitas linguagens e em muito, mas muitos códigos de diferentes formas, deixo um exemplo no qual ela também pode ser usada para uma maior compreensão.

// Chame uma função e salve o valor de retorno em x:

var x = multiplica(4, 3);

function multiplica(a, b) {
  // Retorne(return) o valor do cálculo entre os valores a e b
  return a * b;
}

// o x nesse caso fica com o valor 12(x=12)

Observe que a variável x diz: “função multiplica, faz um cálculo com esses números que estou lhe enviando e ao retornar esse valor calculado eu vou guardar ela comigo, ok ? ” Ou seja, essa palavra reservada abre um “leque” de possibilidades e serve para determinados usos vai variar de acordo com a lógica do Dev.

Caso queira se aprofundar deixo o link para a documentação.

Espero ter ajudado mas caso surjam outras dúvidas, me coloco à disposição.

Sucesso

Um grande abraço e até mais!