ES6 - Sintaxe

Syntaxdefine o conjunto de regras para escrever programas. Cada especificação de linguagem define sua própria sintaxe.

Um programa JavaScript pode ser composto por -

  • Variables - Representa um bloco de memória nomeado que pode armazenar valores para o programa.

  • Literals - Representa valores constantes / fixos.

  • Operators - Símbolos que definem como os operandos serão processados.

  • Keywords - Palavras que têm um significado especial no contexto de um idioma.

A tabela a seguir lista algumas palavras-chave em JavaScript. Algumas palavras-chave comumente usadas estão listadas na tabela a seguir.

pausa Como qualquer Interruptor
caso E se lançar Outro
var número corda Pegue
módulo tipo instancia de Tipo de
finalmente para enum Exportar
enquanto vazio esta Novo
nulo super Pegar deixei
estático Retorna Verdadeiro Falso
  • Modules - Representa blocos de código que podem ser reutilizados em diferentes programas / scripts.

  • Comments- Usado para melhorar a legibilidade do código. Eles são ignorados pelo mecanismo JavaScript.

  • Identifiers - Estes são os nomes dados a elementos em um programa, como variáveis, funções, etc. As regras para identificadores são -

    • Os identificadores podem incluir caracteres e dígitos. No entanto, o identificador não pode começar com um dígito.

    • Os identificadores não podem incluir símbolos especiais, exceto sublinhado (_) ou um cifrão ($).

    • Os identificadores não podem ser palavras-chave. Eles devem ser únicos.

    • Os identificadores são sensíveis a maiúsculas e minúsculas. Os identificadores não podem conter espaços.

A tabela a seguir ilustra alguns identificadores válidos e inválidos.

Exemplos de identificadores válidos Exemplos de identificadores inválidos

primeiro nome

primeiro nome

num1

$ resultado

Var #

primeiro nome

primeiro nome

1 número

Espaços em branco e quebras de linha

ES6 ignora espaços, guias e novas linhas que aparecem nos programas. Você pode usar espaços, tabulações e novas linhas livremente em seu programa e está livre para formatar e recuar seus programas de uma forma limpa e consistente que torna o código fácil de ler e entender.

JavaScript diferencia maiúsculas de minúsculas

JavaScript diferencia maiúsculas de minúsculas. Isso significa que o JavaScript diferencia entre os caracteres maiúsculos e minúsculos.

Ponto e vírgula são opcionais

Cada linha de instrução é chamada de statement. Os pontos-e-vírgulas são opcionais em JavaScript.

Exemplo

console.log("hello world") 
console.log("We are learning ES6")

Uma única linha pode conter várias instruções. No entanto, essas instruções devem ser separadas por ponto e vírgula.

Comentários em JavaScript

Commentssão uma forma de melhorar a legibilidade de um programa. Os comentários podem ser usados ​​para incluir informações adicionais sobre um programa, como o autor do código, dicas sobre uma função / construção, etc. Os comentários são ignorados pelo compilador.

JavaScript suporta os seguintes tipos de comentários -

  • Single-line comments (//) - Qualquer texto entre // e o final de uma linha é tratado como um comentário.

  • Multi-line comments (/* */) - Esses comentários podem abranger várias linhas.

Exemplo

//this is single line comment  
/* This is a  
Multi-line comment 
*/

Seu primeiro código JavaScript

Comecemos com o tradicional exemplo “Hello World” ".

var message = "Hello World" 
console.log(message)

O programa pode ser analisado como -

  • A linha 1 declara uma variável pelo nome mensagem. Variáveis ​​são um mecanismo para armazenar valores em um programa.

  • A linha 2 imprime o valor da variável no prompt. Aqui, o console se refere à janela do terminal. O log de função () é usado para exibir o texto na tela.

Executando o Código

Devemos usar Node.js para executar nosso código.

  • Step 1 - Salve o arquivo como Test.js

  • Step 2 - Clique com o botão direito do mouse no arquivo Test.js na opção de arquivos de trabalho na janela do explorador de projetos do Visual Studio Code.

  • Step 3 - Selecione a opção Abrir no prompt de comando.

  • Step 4 - Digite o seguinte comando na janela de terminal do Node.

node Test.js

A seguinte saída é exibida na execução bem-sucedida do arquivo.

Hello World

Node.js e JS / ES6

Os recursos do ECMAScript 2015 (ES6) são classificados em três grupos -

  • For Shipping - São recursos que o V8 considera estáveis.

  • Staged Features - Esses são recursos quase concluídos, mas não considerados estáveis ​​pela equipe do V8.

  • In Progress - Esses recursos devem ser usados ​​apenas para fins de teste.

A primeira categoria de recursos é totalmente compatível e ativada por padrão por nó. Os recursos encenados exigem um sinalizador de harmonia em tempo de execução para serem executados.

Uma lista de sinalizadores CLI específicos de componentes para Node.js pode ser encontrada aqui - https://nodejs.org/api/cli.html

O Modo Estrito

A quinta edição da especificação ECMAScript introduziu o Modo estrito. O Modo Estrito impõe uma camada de restrição ao JavaScript. Ele faz várias alterações na semântica normal do JavaScript.

O código pode ser transferido para funcionar no modo estrito incluindo o seguinte -

// Whole-script strict mode syntax 
"use strict"; 
 v = "Hi!  I'm a strict mode script!";  // ERROR: Variable v is not declared

No snippet acima, todo o código é executado como uma variante restrita de JavaScript.

O JavaScript também permite restringir o modo estrito dentro do escopo de um bloco como o de uma função. Isso é ilustrado a seguir -

v = 15 
function f1() { 
   "use strict"; 
   var v = "Hi!  I'm a strict mode script!"; 
}

No snippet acima, qualquer código fora da função será executado no modo não estrito. Todas as instruções dentro da função serão executadas no modo estrito.

ES6 e elevação

O mecanismo JavaScript, por padrão, move as declarações para o topo. Este recurso é denominado comohoisting. Este recurso se aplica a variáveis ​​e funções. O içamento permite que o JavaScript use um componente antes de ele ser declarado. No entanto, o conceito de içamento não se aplica a scripts que são executados no Modo estrito.

Elevação variável e elevação funcional são explicadas nos capítulos subsequentes.