Curso - JavaScript Ninja onde é aprendido conceitos do básico ao avançado sobre a Linguagem.
Segue a ementa dos conteúdos a serem estudados durante o curso e mais os exercícios a serem desenvolvidos:
- 1.2) Variáveis e Tipos de Dados
- 1.3) Operadores Aritméticos
- 1.4) Operadores de Igualdade e Relacionais
- 1.5) Funções
- 1.6) Desafio da Semana 01
- 2.1) Operadores Lógicos
- 2.2) Operadores Unários
- 2.3) Estrutura Léxica
- 2.4) Instruções condicionais - IF
- 2.6) Desafio da Semana 02
- 3.1) Tipos de Dados e Objetos
- 3.2) Métodos de Objeto
- 3.3) Desafio da Semana 03
- 4.1) Truthy e Falsy
- 4.2) Condicional Ternário
- 4.3) Escopo de variáveis e funções
- 4.4) Desafio da Semana 04
-
5.1) Retorno de funções com arrays e objetos
-
5.2) Parâmetros de Funções com arrays e objetos
-
5.3) Desafio da Semana 05
-
Estrutura de repetição while
-
O operador módulo
-
Array - a propriedade length
-
Array - método "push()" e Loop "for"
-
A importância de nomear funções
-
Introdução à Functional Programming
-
Escopo de funções
-
Hoisting
-
IIFE - Immediately Invoked Function Expression
-
Wrapper Objects
-
typeof
-
Laços (Loops)
-
Saltos
-
Criação de objetos
-
Criação de objetos - Object.create
-
Métodos de objeto
-
Array - Métodos
-
Array - toString, concat, unshift, shift
-
slice e splice
-
forEach, every, some
-
map, filter
-
reduce() e reduceRight()
-
indexOf(), lastIndexOf() e isArray()
-
JS no browser
-
this
-
Objeto arguments
-
use strict - Criação de variáveis sem o "var"
-
use strict - Uso do width e global this === undefined
-
O operador delete, objetos e funções
-
Objeto String
-
Regex
-
Regex - Negação
-
Regex - Repetidores
-
Conhecendo outros símbolos usados na Regex
-
Métodos de string onde podemos usar regex
-
o objeto RegExp()
-
Js no browser - Selecionar elementos no DOM
-
Js no browser - Formulário e eventos
-
Sync vs async
-
setTimeout
-
setTimeout vs setInterval
-
Propriedades e métodos de funções
-
Prototype
-
Array-like e editorconfig
-
Debug
-
Modularização de código
-
Javascript inline
-
Eventos inline
-
Remover eventos
-
Eventos como métodos
-
DOM
-
documentFragments
-
Dicas de performance
-
Eventos para carregamento da tela
-
Copiar arrays
-
Pegar tipo correto de objetos
-
Ajax - método GET
-
try / catch
-
Tratamento de dados via entrada do usuário
-
Module Pattern
-
Closures
-
Exportar módulo para usar em outros módulos
-
instanceof
-
element.classList
-
innerHTML, outerHTML e insertAdjacentHTML
-
Objeto Date
-
Objeto Math
-
Ajax - outros verbos
-
Backend para mostrar como ele recebe os dados do client
-
Enviar dados via Ajax
-
Enviar cabeçalhos via Ajax
-
Abortar requisição Ajax
-
Testes (TDD, BDD)
-
Ferramentas para escrever testes
-
Aula bônus