Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Uso da variável

A função abaixo é do código carro.js

function passouTodaATela(xCarro){ return xCarro < - 50; }

Como é possível você passar a variável xCarro para a função passouTodaATela sendo que ela nem está mais declarada? Não entendi muito bem.

5 respostas

Ela continua sendo declarada porque não está dentro de função.

A variável xCarro não está declarada e nenhum lugar do arquivo carro.js entendeu meu questionamento?

Ctrl + F, var xCarro

Marcelo, pode acessar o código do arquivo Carro.js https://cursos.alura.com.br/course/javascript-listas-lacos/task/56237

E ver que o único momento que essa variável aparece é quando é passada por referencia, é isso?

solução!

Bom dia, Boa tarde, Boa noite, Gabriel.

Quando você escreveu a função:

function passouTodaATela(xCarro){
  return xCarro < -50
}

O valor entre parênteses, no caso "xCarro" é você declarando uma variável de scopo local para usar apenas dentro dessa função nesse momento, ela poderia ter qualquer nome ex: "x", "asd", "variavel".. Ela receberá o valor declarado quando você chamar a função.

function voltaPosicaoInicialDoCarro(){
  for (let i = 0; i < xCarros.length; i += 1){
    **if (passouTodaATela(xCarros[i])){**
      xCarros[i] = 600
    }
  }
}

Na linha em destaque você faz a solicitação da função declarando o valor atual do "xCarros[i]", então quando o programa for executar a função ele vai substituir o valor atual de "xCarros[i]" pelo valor da variável que você declarou como "xCarro", lembrando que poderia se chamar como você quiser, retornando o resultado da comparacação "xCarro < - 50" para o programa principal.