Sumário Livro Javascript Essencial
Sumário Livro Javascript Essencial
Essencial
Guia Prático para Estudantes
Novatec
Copyright © 2010, 2024 da Novatec Editora Ltda.
Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução
desta obra, mesmo parcial, por qualquer processo, sem prévia autorização, por escrito, do autor e
da Editora.
Editor: Rubens Prates
Revisão gramatical: Tássia Carvalho
Capa: Karina Tsuchiya
ISBN impresso: 978-85-7522-891-3
ISBN ebook: 978-85-7522-892-0
Histórico de impressões:
Março/2024 Primeira edição
Novatec Editora Ltda.
Rua Luís Antônio dos Santos 110
02460-000 – São Paulo, SP – Brasil
Tel.: +55 11 2959-6529
Email: novatec@novatec.com.br
Site: https://novatec.com.br
Twitter: twitter.com/novateceditora
Facebook: facebook.com/novatec
LinkedIn: linkedin.com/in/novatec
GRA20240229
Sumário
Agradecimentos..................................................................................................................................15
Isenção de responsabilidade................................................................................................................16
Sobre o autor......................................................................................................................................17
Introdução..........................................................................................................................................18
Capítulo 1 Introdução à JavaScript...................................................................................................23
1.1 Histórico............................................................................................................. 23
1.2 Transpilers JavaScript.......................................................................................... 23
1.3 Ambientes de estudo........................................................................................... 24
1.4 Começando com JavaScript................................................................................. 24
1.4.1 Objeto.......................................................................................................... 24
1.4.2 Caixas de diálogo......................................................................................... 26
1.4.3 Codificação de caracteres em JavaScript........................................................ 27
1.4.4 Escrever HTML com JavaScript.................................................................... 28
1.4.5 Eventos........................................................................................................ 28
1.4.6 Atrelar JavaScript a documentos................................................................... 28
1.4.7 Import e export............................................................................................ 29
1.4.8 Estrutura léxica da JavaScript....................................................................... 31
1.4.9 Variáveis...................................................................................................... 34
1.4.10 Operador typeof......................................................................................... 36
1.4.11 Valores primitivos....................................................................................... 36
1.4.12 Funções...................................................................................................... 37
1.4.13 Palavras reservadas let e const..................................................................... 37
1.4.14 Hoisting..................................................................................................... 39
1.5 DOM HTML...................................................................................................... 41
1.6 DOM CSS........................................................................................................... 45
Capítulo 2 Operadores.....................................................................................................................46
2.1 Introdução.......................................................................................................... 46
2.2 Operadores......................................................................................................... 46
2.2.1 Operandos................................................................................................... 48
2.2.2 Precedência dos operadores.......................................................................... 48
2.2.3 Associatividade dos operadores.................................................................... 49
5
6 JavaScript Essencial
Capítulo 4 Objeto.............................................................................................................................69
4.1 Objeto................................................................................................................. 69
4.1.1 Sintaxe formal.............................................................................................. 70
4.1.2 Sintaxe literal............................................................................................... 71
4.2 Construtor.......................................................................................................... 71
4.3 prototype............................................................................................................ 72
4.4 Classes................................................................................................................ 73
Capítulo 5 Array...............................................................................................................................75
5.1 Fundamentos...................................................................................................... 75
5.1.1 Array associativo.......................................................................................... 76
5.2 Propriedades do objeto Array............................................................................... 76
5.2.1 constructor.................................................................................................. 77
5.2.2 prototype..................................................................................................... 77
5.2.3 length.......................................................................................................... 77
5.3 Métodos do objeto Array..................................................................................... 77
5.3.1 Array.isArray(param).................................................................................... 77
5.3.2 concat(arr1 [, arr2, ... arrN])........................................................................ 77
5.3.3 join([separador])........................................................................................... 78
5.3.4 indexOf(el [,inicio])...................................................................................... 78
5.3.5 lastIndexOf(el [,inicio])................................................................................ 79
5.3.6 keys()........................................................................................................... 79
5.3.7 includes(elemento [,inicio])........................................................................... 79
5.3.8 shift().......................................................................................................... 80
5.3.9 pop()........................................................................................................... 80
5.3.10 unshift(elemento [,elemento1, ..., elementoN])............................................. 80
5.3.11 push(elemento [,elemento1, ..., elementoN])................................................. 80
5.3.12 splice(posição [,qde, elemento1..., elementoN])............................................ 80
5.3.13 valueOf().................................................................................................... 81
5.3.14 copyWithin(index [,inicio [,fim]])................................................................ 81
5.3.15 fill(el [,inicio [,fim])..................................................................................... 82
5.3.16 every(fn(el, [index [,arr]) [,thisValue]).......................................................... 83
5.3.17 some(fn(el [,index[,arr]] [,thisValue])........................................................... 83
5.3.18 find(fn(el, [index[,arr]) [,thisValue])............................................................. 83
5.3.19 findIndex(fn(el, [index[,arr]) [,thisValue]).................................................... 84
5.3.20 filter(fn(el, [index[,arr]) [,thisValue])............................................................ 84
5.3.21 map(fn(el, [index[,arr]) [,thisValue])............................................................ 84
5.3.22 forEach(fn(el, [index], [arr]), [thisValue])..................................................... 84
5.3.23 reduce(fn(acc, valorAtual[,index[,arr]) [,valorInicial]).................................. 85
5.3.24 reduceRight(fn(acumulador, valorAtual[,index[,arr]) [,valorInicial])............. 86
5.3.25 reverse()..................................................................................................... 86
5.3.26 slice(inicio [,fim])....................................................................................... 86
8 JavaScript Essencial
5.3.27 sort([fnComparadora])................................................................................ 87
5.3.28 toString()................................................................................................... 88
5.4 Atribuição via desestruturação (Destructuring assignment).................................. 88
Capítulo 6 Funções...........................................................................................................................90
6.1 Introdução.......................................................................................................... 90
6.2 Criando funções................................................................................................. 90
6.2.1 Declaração function..................................................................................... 91
6.2.2 Sintaxe literal – Função anônima.................................................................. 93
6.2.3 Construtor Function().................................................................................. 94
6.3 Retornando objetos............................................................................................. 95
6.3.1 Função retorna array indexado..................................................................... 95
6.3.2 Função retorna array associativo................................................................... 96
6.4 IIFE – Autoinvocar função................................................................................... 96
6.5 Escopo de uma função........................................................................................ 97
6.5.1 Sintaxe ES5.................................................................................................. 97
6.6 Closures............................................................................................................. 98
6.7 Funções globais..................................................................................................101
6.7.1 encodeURI(uri)........................................................................................... 102
6.7.2 decodeURI(uriCodificada).......................................................................... 102
6.7.3 encodeURIComponent(str)......................................................................... 102
6.7.4 decodeURIComponent(uriCodificada)........................................................ 102
6.7.5 eval(código)................................................................................................ 102
6.7.6 isFinite(valor)............................................................................................. 103
6.7.7 isNaN(valor)............................................................................................... 103
6.7.8 parseFloat(string)....................................................................................... 103
6.7.9 parseInt(string[, base])................................................................................ 104
6.8 Miscelânea........................................................................................................ 105
6.8.1 arguments.................................................................................................. 105
6.8.2 default parameters...................................................................................... 105
6.8.3 rest parameters.......................................................................................... 106
6.8.5 call(this, argumentos)................................................................................. 106
6.8.6 apply(this, array)........................................................................................ 109
6.8.7 setTimeout(fn [,delay, param1, ..., paramN])............................................... 109
6.8.8 clearTimeout(timeoutID).............................................................................110
6.8.9 setInterval(fn [,delay, param1, ..., paramN]).................................................110
6.8.10 clearInterval(intervalID)............................................................................111