Bom dia, boa tarde e boa noite. Hoje nós vamos falar sobre o conceito e as diferenças entre expressions (expressões) vs statements (declarações) no JavaScript.

Mas primeiramente, por que precisamos falar sobre isso? Porque JavaScript é uma linguagem que diferencia as expressões das declarações, portanto, é muito importante entender o que são e quais suas diferenças. Vamos lá?

Expressões

Em termos simples, uma expressão em JavaScript é tudo aquilo que se resolve em um valor. No código abaixo podemos ver a expressão do lado direito do sinal de igual (=):

Const x = 10;

É entendido que o valor da constante x é dez, portanto, para o computador, essa expressão é a mesma coisa que a expressão:

Const x = 1 + 1 + 1 + 1 + 1 + 5;

Resolver em um valor não significa necessariamente fazer uma operação, as duas expressões, embora diferentes, levam ao mesmo resultado e são vistas da mesma forma pelo computador porque ambas estão retornando um valor.

Dessa forma é simples de visualizar, mas isso não é uma regra. Nem sempre diferenciar uma expressão de uma declaração será tão fácil. Vamos ver o exemplo do código abaixo:

Const x = resultado( );

A função resultado também é uma expressão, isso acontece porque a chamada da função é substituída pelo valor retornado do resultado, ou seja, ela se resolve em um valor.

Declarações

E uma declaração? De forma bem resumida, ela é uma instrução para o computador fazer/realizar algo. Alguns exemplos de declarações são:

if (condição) {
   instrução
}
for (inicialização; condição; expressão final) {
   instrução
}
while (condição) {
   rotina
}

Assim, todos esses exemplos estão indicando uma ação que o computador deve fazer.

Importância da diferenciação

É importante entender como cada um funciona porque, dessa forma, escrever um código se torna mais intuitivo. Não dá pra declarar uma variável usando um if, exemplo:

Let a = if (b > c) { return 10 }

Da mesma forma que não dá para usar uma declaração const para imprimir alguma coisa:

console.log(const x); //esse código trará uma mensagem de erro.

Conclusão

Nesse artigo nós entendemos sobre o conceito de expressões e declarações em JavaScript, suas diferenças e porque é importante entender sobre esses conceitos.

E se você quiser saber um pouco mais sobre JavaScript, dá uma olhadinha nesses materiais

Spread e Rest operators em JavaScript

O ESSENCIAL de JavaScript Funcional em DUAS HORAS

Até a próxima, pessoal!