Introdução ECMAScript® Language Specification Como executar código JavaScript Como incluir código JavaScript no HTML Input e output de dados com JavaScript Debug no Console do DevTools Tipos de Dados Variáveis Operadores Operadores ES6 Estruturas Condicionais de codificação Estruturas de Repetição de codificação Introdução à Funções Tipos de Funções Funções Arrow Escopo e Contexto das Funções Funções de Callback Default Arguments em Funções Object arguments em Funções Currying - Conceito de linguagem funcional Funções Generators Array Object Orientação à Objeto Orientação à Objeto baseada em Protótipo Palavra reservada "this" Coleções Chaveadas Coleção chaveada - Map Coleção chaveada - Set Hoisting de Variáveis e Funções Imutabilidade Sincronisidade e Assincronicidade Sincronisidade e Assincronicidade no JavaScript Fetch Assíncrono - Promises Errors Tratamento de erros e exceções - Try/Catch/Finally Tratamento de erros e exceções - Classe Error Tests TDD BDD Jest Tools Mocha Chai Sinon Design Patterns Design Patterns - Module Design Patterns - Factory Design Patterns - Decorator Design Patterns - Observer Design Patterns - Singleton Organização - Estrutura de Projeto Performance - Otimização de Código Symbol e Iterators DOM - Document Object Model DOM - Selecionar elementos