Executando verificação de segurança...
1

declaração de variável em JavaScript

var pi = 3.14159;
var diametro = raio * 2;
var raio = 10;

Teoricamente o resultado de diametro deveria ser 20, certo?
mas o problema é que no console é tido como "NaN".

Oque eu posso ter feito nessa situação?

Carregando publicação patrocinada...
2
2
1
1

Sim, a variável não vai ser identificada se ela não foi declarada ainda.

JavaScript é uma linguagem interpretada — o código é executado de cima para baixo e o resultado da execução do código é imediatamente retornado.

1

no momento que vc declara diametro atribuindo a ela o valor de raio, o js naquele momento ainda nao conhece o valor do raio pois ele eh declarado so a seguir. por isso precisa declarar a var raio antes

1

Para variaveis essa regra se aplica na maioria das linguagens acredito.
No JS em especifico você pode declarar funções abaixo e ele conseguira encontrar em tempo de execução, diferente de C por exemplo.

Mas no seu exemplo das variáveis, como a variável raio está declarada depois da variável diâmetro, o valor dela sera undefined (no momento do calculo)


var pi = 3.14159;
var raio = 10;
var diametro = raio * 2;

Tente assim e deve funcionar.

1

Apenas um adendo:

Javascript é essencialmente uma linguagem imperativa, isso significa que os comandos (statements) serão avaliados na ordem que foram escritos.

Para declaração de funções a coisa muda de figura pois a linguagem possui hoisting. Na prática, isso faz com que uma chamada a uma função possa ocorrer antes da declaração.

Por exemplo, o trecho de código a seguir funciona.

hello();

function hello() {
  console.log("Hello!");
}

Veja mais em https://developer.mozilla.org/en-US/docs/Glossary/Hoisting.