Seções
Seção 1: Introdução
- 1. Apresentação do curso
- 2. Introdução
- 3. O que é JavaScript?
- 4. Onde o JavaScript é utilizado?
- 5. Fazendo download do VSCode (editor de texto utilizado no curso)
- 6. Como executar JS no navegador por arquivo
- 7. Como executar JS diretamente no navegador
- 8. Maneira alternativa de executar JS
- 9. Como pesquisar problemas/dúvidas de código no Stackoverflow
- 10. Como pesquisar problemas/dúvidas de códigos no Google
- 11. Minha sugestão para você acompanhar o curso
- 12. Slides do Curso
- 13. Conclusão da seção
- 14. Arquivos do curso
Seção 2: Tipos de dado e operadores lógicos
- 15. Introdução da seção
- 16. O que são tipos de dados?
- 17. Tipo de dado: number
- 18. Operações aritméticas com numbers
- 19. Conhecendo os special numbers
- 20. Tipo de dado: string
- 21. Mais sobre strings
- 22. Tipo de dado: boolean
- 23. Comparações com booleans
- 24. Operadores lógicos: teoria
- 25. Operadores lógicos: prática
- 26. Operador ternário
- 27. Conhecendo os empty values
- 28. Conversão automática de valor
- 29. Conclusão da seção
- Teste 1: Questionário sobre tipos de dados
Seção 3: Estruturas de Programação
- 42. Introdução da seção
- 43. O que é um software?
- 44. O que são variáveis?
- 45. Outras forma de declarar variáveis
- 46. Convenção no nome de váriaveis
- 47. Palavras reservadas da linguagem JavaScript
- 48. O ambiente do JavaScript
- 49. As estruturas das funções
- 50. Função built in: prompt
- 51. Função built in: alert
- 52. Função built in: Math
- 53. Função built in: console.log
- 54. O que são estruturas de controle?
- 55. Estrutura de controle: if
- 56. Estrutura de controle: else
- 57. Estrutura de controle: else if
- 58. O que são estruturas de repetição?
- 59. Estrutura de repetição: while
- 60. Estrutura de repetição: do while
- 61. Estrutura de repetição: for
- 62. O que é identação?
- 63. Utilizando break
- 64. Utilizando continue
- 65. Incrementação resumida
- 66. Estrutura de controle: switch
- 67. Um pouco mais sobre declaração de variáveis
- 68. Como escrever comentários
- 69. Conclusão da seção
- Teste 2: Questionário sobre lógica de programação
Seção 4: Funções
- 92. Introdução da seção
- 93. O que são funções?
- 94. Definindo uma função: teoria
- 95. Definindo uma função: prática
- 96. Mais sobre funções
- 97. O escopo das funções
- 98. Mais sobre escopo
- 99. Escopo aninhado
- 100. Arrow functions
- 101. Mais sobre arrow functions
- 102. Argumentos opcionais
- 103. Argumentos com valor default
- 104. Closure
- 105. Recursion
- 106. Conclusão da seção
- Teste 3: Questionário sobre funções
Seção 5: Arrays e Objects
- 129. Introdução da seção
- 130. O que são arrays?
- 131. Mais sobre arrays
- 132. O que são propriedades?
- 133. O que são métodos?
- 134. O que são objetos?
- 135. Adicionando e deletando propriedades de um objeto
- 136. Copiando propriedades de um objeto
- 137. Verificando as chaves de um objeto
- 138. Mutação
- 139. Loop em arrays
- 140. Métodos de arrays: push e pop
- 141. Métodos de arrays: shift e unshift
- 142. Métodos de arrays: indexOf e lastIndexOf
- 143. Métodos de arrays: slice
- 144. Métodos de arrays: forEach
- 145. Métodos de arrays: includes
- 146. Métodos de arrays: reverse
- 147. Métodos de strings: trim
- 148. Métodos de strings: padStart
- 149. Métodos de strings: split
- 150. Métodos de strings: join
- 151. Métodos de strings: repeat
- 152. Rest operator
- 153. Destructuring em objetos
- 154. Destructuring em arrays
- 155. O que é JSON?
- 156. Mais sobre JSON
- 157. Convertendo JSON para string
- 158. Conclusão
- Teste 4: Quiz sobre arrays e objetos
Seção 6: Conceitos de orientação a objetos
- 181. Introdução da seção
- 182. O que é orientação a objetos?
- 183. Aprofundando em métodos
- 184. Um pouco mais sobre métodos
- 185. Prototypes
- 186. Avançando em prototypes
- 187. Classes
- 188. Instanciando classes por função
- 189. Instanciando classes por new
- 190. Métodos no prototype
- 191. Class e constructor do ES6
- 192. Override no prototype
- 193. Métodos e propriedades em uma Class
- 194. Symbol
- 195. Getters e Setters
- 196. Herança
- 197. Operador instanceof
- 198. Conclusão da seção
- Teste 5: Questionário sobre OO
Seção 7: Debugs e erros no JavaScript
- 211. Introdução da seção
- 212. O que é bug e debug?
- 213. Strict mode
- 214. Forma de debug: console.log
- 215. Forma de debug: debugger
- 216. Tratamento de input por função
- 217. Exception
- 218. Try e Catch
- 219. Finally
- 220. Assertion
- 221. Conclusão de seção
Seção 8: Expressões Regulares
- 222. Introdução da seção
- 223. O que são expressões regulares?
- 224. Como criar uma expressão regular
- 225. Testando uma expressão regular
- 226. Conjuntos
- 227. Caracteres especiais
- 228. Caracteres especiais na prática
- 229. Operador not !
- 230. Operador plus +
- 231. Operador question ?
- 232. Operador de precisão
- 233. Método exec
- 234. Método match
- 235. Choice pattern
- 236. Regex na prática: validando domínios
- 237. Regex na prática: validando e-mail
- 238. Regex na prática: validando data de nascimento
- 239. Conclusão da seção
Seção 9: Programação Assíncrona com JavaScript
- 252. Introdução da seção
- 253. O que é programação assíncrona?
- 254. Utilizando callbacks
- 255. Aprendendendo a utilizar Promises
- 256. Falha nas Promises
- 257. Rejeitando Promises
- 258. Resolvendo várias Promises
- 259. Funções assíncronas
- 260. Utilizando await
- 261. Generators
- 262. Conclusão da seção
- Teste 6: Questionário sobre programação assíncrona
Seção 10: JavaScript e o navegador
- 263. Introdução da seção
- 264. Ententendo protocolos
- 265. O que é uma URL?
- 266. Entendendo o HTML
- 267. A estrutura do HTML
- 268. O HTML e o JavaScript
- 269. O HTML e o DOM
- 270. Entendendo o DOM
- 271. A árvore do DOM
- 272. Acessando elementos/tags
- 273. Encontrando elementos teoria
- 274. Encontrando elementos pela tag
- 275. Encontrando elementos por id
- 276. Encontrando elementos pela classe
- 277. Encontrando elementos por query
- 278. Alterando o HTML
- 279. Inserindo elementos com insertBefore
- 280. Inserindo elementos com appendChild
- 281. Trocando elementos com replaceChild
- 282. Inserindo texto nos elementos
- 283. Criando elementos
- 284. Manipulando atributos de elementos
- 285. Largura e altura dos elementos
- 286. Posições dos elementos
- 287. Alterando CSS com JS
- 288. Selecionando vários elementos com query
- 289. Conclusão da seção
- Teste 7: Questionário sobre DOM
Seção 11: Eventos com JavaScript
- 290. Introdução da seção
- 291. O que são eventos?
- 292. Criando um evento
- 293. Removendo eventos
- 294. Objeto dos eventos
- 295. Entendendo propagation
- 296. Prevent default
- 297. Eventos por tecla
- 298. Mais sobre eventos do mouse
- 299. Movimentos do mouse
- 300. Eventos de scroll
- 301. Eventos de foco
- 302. Eventos de page load
- 303. Debounce
- 304. Conclusão da seção
Seção 12: Aprendendo Node.js
- 314. Introdução da seção
- 315. O que é Node?
- 316. Instalando o Node
- 317. Testando o Node
- 318. O comando node
- 319. O que é npm?
- 320. Criando um projeto
- 321. Lendo arquivos com Node
- 322. Escrevendo em arquivos com Node
- 323. Criando a primeira aplicação
- 324. O que é API?
- 325. REST e RESTful
- 326. Os verbos HTTP
- 327. O que é Express?
- 328. Instalando o Express
- 329. O que são rotas?
- 330. Criando a primeira aplicação com Express
- 331. Instalando o Postman
- 332. Testando nossa API com o Postman
- 333. Conclusão da seção
Projetos
Projeto 1: Jogo da Velha (HTML, CSS, DOM e eventos)
- 305. Introdução do projeto
- 306. Estruturando o projeto
- 307. Criando o HTML
- 308. Finalizando o CSS
- 309. Criando a lógica do jogo
- 310. Lógica da condição de vitória
- 311. Declarando quem foi o vencedor
- 312. Fazendo a IA jogar
- 313. Conclusão do projeto
Projeto 2: Projeto com Node, Express, Sequelize: Job Finder
- 334. Introdução do projeto
- 335. Criando o projeto e instalando dependências
- 336. Iniciando o app com o Express
- 337. Conectando ao banco de dados
- 338. Criando a tabela
- 339. Criando o Model
- 340. Criando a rota para adicionar registros
- 341. Inserindo dados no banco via Postman
- 342. Criando layout da home
- 343. Finalizando o layout da home
- 344. CSS da home
- 345. HTML da página de adicionar jobs
- 346. CSS da página de adicionar jobs
- 347. Instalando o handlebars
- 348. Criando view com handlebars
- 349. Resgatando dados do banco e colocando na view
- 350. Fazendo a lógica da busca
- 351. Adicionando dados ao banco via form
- 352. Criando view da job individual
- 353. CSS da view da job
- 354. Deixando o layout o responsivo
- 355. Conclusão do projeto
Projeto 3: Quizz com Vanilla JS (Manipulação e eventos de DOM)
- 356. Apresentação do projeto
- 357. Arquivos do projeto
- 358. Estrutura base do projeto
- 359. HTML do projeto
- 360. CSS da tela de pontuação
- 361. Finalizando CSS do projeto
- 362. Iniciando a lógica do Quizz
- 363. Exibindo as alternativas na tela
- 364. Avançando questões do Quizz
- 365. Exibindo pontuação do usuário
- 366. Conclusão do projeto
Exercícios
Seção 2.1: Exercícios sobre tipos de dados
- 30. Introdução da seção
- 31. Exercício 01: explicação
- 32. Exercício 01: solução
- 33. Exercício 02: explicação
- 34. Exercício 02: solução
- 35. Exercício 03: explicação
- 36. Exercício 03: solução
- 37. Exercício 04: explicação
- 38. Exercício 04: solução
- 39. Exercício 05: explicação
- 40. Exercício 05: solução
- 41. Conclusão da seção
Seção 3.1: Exercícios sobre estrutura de programação
- 70. Introdução da seção
- 71. Exercício 06: explicação
- 72. Exercício 06: solução
- 73. Exercício 07: explicação
- 74. Exercício 07: solução
- 75. Exercício 08: explicação
- 76. Exercício 08: solução
- 77. Exercício 09: explicação
- 78. Exercício 09: solução
- 79. Exercício 10: explicação
- 80. Exercício 10: solução
- 81. Exercício 11: explicação
- 82. Exercício 11: solução
- 83. Exercício 12: explicação
- 84. Exercício 12: solução
- 85. Exercício 13: explicação
- 86. Exercício 13: solução
- 87. Exercício 14: explicação
- 88. Exercício 14: solução
- 89. Exercício 15: explicação
- 90. Exercício 15: solução
- 91. Conclusão da seção
Seção 4.1: Exercícios sobre funções
- 107. Introdução da seção
- 108. Exercício 16: explicação
- 109. Exercício 16: solução
- 110. Exercício 17: explicação
- 111. Exercício 17: solução
- 112. Exercício 18: explicação
- 113. Exercício 18: solução
- 114. Exercício 19: explicação
- 115. Exercício 19: solução
- 116. Exercício 20: explicação
- 117. Exercício 20: solução
- 118. Exercício 21: explicação
- 119. Exercício 21: solução
- 120. Exercício 22: explicação
- 121. Exercício 22: solução
- 122. Exercício 23: explicação
- 123. Exercício 23: solução
- 124. Exercício 24: explicação
- 125. Exercício 24: solução
- 126. Exercício 25: explicação
- 127. Exercício 25: solução
- 128. Conclusão da seção
Seção 5.1: Exercícios sobre arrays e objetos
- 159. Introdução da seção
- 160. Exercício 26: explicação
- 161. Exercício 26: solução
- 162. Exercício 27: explicação
- 163. Exercício 27: solução
- 164. Exercício 28: explicação
- 165. Exercício 28: solução
- 166. Exercício 29: explicação
- 167. Exercício 29: solução
- 168. Exercício 30: explicação
- 169. Exercício 30: solução
- 170. Exercício 31: explicação
- 171. Exercício 31: solução
- 172. Exercício 32: explicação
- 173. Exercício 32: solução
- 174. Exercício 33: explicação
- 175. Exercício 33: solução
- 176. Exercício 34: explicação
- 177. Exercício 34: solução
- 178. Exercício 35: explicação
- 179. Exercício 35: solução
- 180. Conclusão da seção
Seção 6.1: Exercícios sobre orientação a objetos
- 199. Introdução da seção
- 200. Exercício 36: explicação
- 201. Exercício 36: solução
- 202. Exercício 37: explicação
- 203. Exercício 37: solução
- 204. Exercício 38: explicação
- 205. Exercício 38: solução
- 206. Exercício 39: explicação
- 207. Exercício 39: solução
- 208. Exercício 40: explicação
- 209. Exercício 40: solução
- 210. Conclusão da seção
Seção 8.1: Exercícios sobre Expressões Regulares
- 240. Introdução da seção
- 241. Exercício 41: explicação
- 242. Exercício 41: solução
- 243. Exercício 42: explicação
- 244. Exercício 42: solução
- 245. Exercício 43: explicação
- 246. Exercício 43: solução
- 247. Exercício 44: explicação
- 248. Exercício 44: solução
- 249. Exercício 45: explicação
- 250. Exercício 45: solução
- 251. Conclusão da seção