JavaScript Essencial

Guia Prático para Estudantes

JavaScript Essencial
× JavaScript Essencial

JavaScript Essencial

Compartilhar

Autor: Maurício Samy Silva

ISBN impresso: 978-85-7522-891-3
ISBN ebook: 978-85-7522-892-0
Ano: 2024
Páginas: 224
Preço impresso: R$ 89,00 O ebook deste livro está disponível na Amazon.

3 opiniões | Opine sobre este livro

Descrição do livro

JavaScript é uma linguagem de script usada em milhões de páginas web em todo o mundo, e desenvolvedores e webdesigners não podem prescindir do conhecimento dessa poderosa linguagem.

Este livro aborda os fundamentos da linguagem JavaScript, desde os conceitos mais básicos de programação web até orientação a objetos. Descreve seus objetos, construtores, propriedades, métodos, eventos e constantes, conforme definidos pelas recomendações da ECMAScript 2015, também conhecida como ES6, a versão mais recente e estável da linguagem JavaScript moderna.

Destina-se a estudantes e iniciantes que possuem conhecimento da linguagem de marcação HTML e de CSS, e estejam interessados na criação de aplicativos web e mobile. Mesmo para quem já possui conhecimento intermediário de JavaScript, o livro oferece uma excelente oportunidade de rever conceitos e até mesmo incorporar novos conceitos ao seu conhecimento.

No site de apoio ao livro (https://livrosdomaujor.com.br/jsessencial), o leitor encontrará os códigos-fonte para download e informações complementares sobre o livro, além de exemplos práticos, disponíveis online para consulta e download.

Ver menos ▲

Sumário

  • Agradecimentos
  • Isenção de responsabilidade
  • Sobre o autor
  • Introdução
  • Capítulo 1  Introdução à JavaScript
    • 1.1 Histórico
    • 1.2 Transpilers JavaScript
    • 1.3 Ambientes de estudo
    • 1.4 Começando com JavaScript
      • 1.4.1 Objeto
      • 1.4.2 Caixas de diálogo
      • 1.4.3 Codificação de caracteres em JavaScript
      • 1.4.4 Escrever HTML com JavaScript
      • 1.4.5 Eventos
      • 1.4.6 Atrelar JavaScript a documentos
      • 1.4.7 Import e export
      • 1.4.8 Estrutura léxica da JavaScript
      • 1.4.9 Variáveis
      • 1.4.10 Operador typeof
      • 1.4.11 Valores primitivos
      • 1.4.12 Funções
      • 1.4.13 Palavras reservadas let e const
      • 1.4.14 Hoisting
    • 1.5 DOM HTML
    • 1.6 DOM CSS
  • Capítulo 2  Operadores
    • 2.1 Introdução
    • 2.2 Operadores
      • 2.2.1 Operandos
      • 2.2.2 Precedência dos operadores
      • 2.2.3 Associatividade dos operadores
    • 2.3 Operações matemáticas
    • 2.4 Operações lógicas
      • 2.4.1 Operador lógico &&
      • 2.4.2 Operador lógico ||
      • 2.4.3 Operador lógico !
    • 2.5 Operações com strings
    • 2.6 Operações de atribuição
    • 2.7 Operações especiais
      • 2.7.1 Operador condicional ? :
      • 2.7.2 Operador de separação , (vírgula)
      • 2.7.3 Operador delete
      • 2.7.4 Operador in
      • 2.7.5 Operador instanceof
      • 2.7.6 Operador new
      • 2.7.7 Operador this
      • 2.7.8 Operador typeof
      • 2.7.9 Operador ()
      • 2.7.10 Operador void
      • 2.7.11 Operador spread
  • Capítulo 3  Declarações e estruturas
    • 3.1 Declarações
      • 3.1.1 var, let, const
      • 3.1.2 Arrow function
      • 3.1.3 return
    • 3.2 Estruturas condicionais
      • 3.2.1 if
      • 3.2.2 else
      • 3.2.3 else if
      • 3.2.4 switch
    • 3.3 Estruturas para loops
      • 3.3.1 for
      • 3.3.2 while
      • 3.3.3 do–while
      • 3.3.4 for–in
      • 3.3.5 for–of
    • 3.4 ObjetoError
      • 3.4.1 message
      • 3.4.2 name
      • 3.4.3 toString()
    • 3.5 try–catch–finally
    • 3.6 throw
    • 3.7 with
  • Capítulo 4  Objeto
    • 4.1 Objeto
      • 4.1.1 Sintaxe formal
      • 4.1.2 Sintaxe literal
    • 4.2 Construtor
    • 4.3 prototype
    • 4.4 Classes
  • Capítulo 5  Array
    • 5.1 Fundamentos
      • 5.1.1 Array associativo
    • 5.2 Propriedades do objeto Array
      • 5.2.1 constructor
      • 5.2.2 prototype
      • 5.2.3 length
    • 5.3 Métodos do objeto Array
      • 5.3.1 Array isArray(param)
        • 5.3.2 concat(arr1 [, arr2, ... arrN])
      • 5.3.3 join([separador])
      • 5.3.4 indexOf(el [,inicio])
      • 5.3.5 lastIndexOf(el [,inicio])
      • 5.3.6 keys()
      • 5.3.7 includes(elemento [,inicio])
      • 5.3.8 shift()
      • 5.3.9 pop()
      • 5.3.10 unshift(elemento [,elemento1, ..., elementoN])
      • 5.3.11 push(elemento [,elemento1, ..., elementoN])
      • 5.3.12 splice(posição [,qde, elemento1..., elementoN])
      • 5.3.13 valueOf()
      • 5.3.14 copyWithin(index [,inicio [,fim]])
      • 5.3.15 fill(el [,inicio [,fim])
      • 5.3.16 every(fn(el, [index [,arr]) [,thisValue])
      • 5.3.17 some(fn(el [,index[,arr]] [,thisValue])
      • 5.3.18 find(fn(el, [index[,arr]) [,thisValue])
      • 5.3.19 findIndex(fn(el, [index[,arr]) [,thisValue])
      • 5.3.20 filter(fn(el, [index[,arr]) [,thisValue])
      • 5.3.21 map(fn(el, [index[,arr]) [,thisValue])
      • 5.3.22 forEach(fn(el, [index], [arr]), [thisValue])
      • 5.3.23 reduce(fn(acc, valorAtual[,index[,arr]) [,valorInicial])
      • 5.3.24 reduceRight(fn(acumulador, valorAtual[,index[,arr]) [,valorInicial])
      • 5.3.25 reverse()
      • 5.3.26 slice(inicio [,fim])
      • 5.3.27 sort([fnComparadora])
      • 5.3.28 toString()
    • 5.4 Atribuição via desestruturação (Destructuring assignment)
  • Capítulo 6  Funções
    • 6.1 Introdução
    • 6.2 Criando funções
      • 6.2.1 Declaração function
      • 6.2.2 Sintaxe literal – Função anônima
      • 6.2.3 Construtor Function()
    • 6.3 Retornando objetos
      • 6.3.1 Função retorna array indexado
      • 6.3.2 Função retorna array associativo
    • 6.4 IIFE – Autoinvocar função
    • 6.5 Escopo de uma função
      • 6.5.1 Sintaxe ES5
    • 6.6 Closures
    • 6.7 Funções globais
      • 6.7.1 encodeURI(uri)
      • 6.7.2 decodeURI(uriCodificada)
      • 6.7.3 encodeURIComponent(str)
      • 6.7.4 decodeURIComponent(uriCodificada)
      • 6.7.5 eval(código)
      • 6.7.6 isFinite(valor)
      • 6.7.7 isNaN(valor)
      • 6.7.8 parseFloat(string)
      • 6.7.9 parseInt(string[, base])
    • 6.8 Miscelânea
      • 6.8.1 arguments
      • 6.8.2 default parameters
      • 6.8.3 rest parameters
      • 6.8.5 call(this, argumentos)
      • 6.8.6 apply(this, array)
      • 6.8.7 setTimeout(fn [,delay, param1, ..., paramN])
      • 6.8.8 clearTimeout(timeoutID)
      • 6.8.9 setInterval(fn [,delay, param1, ..., paramN])
      • 6.8.10 clearInterval(intervalID)
  • Capítulo 7  Eventos
    • 7.1 Introdução
    • 7.2 Atrelar evento com uso de propriedade
    • 7.3 Atrelar evento com uso de método
      • 7.3.1 addEventListener(evento, fn[, useCapture])
      • 7.3.2 removeEventListener(evento, fn [, useCapture])
    • 7.4 Propagação de eventos
    • 7.5 Objeto event
      • 7.5.1 Propriedades do objeto event
    • 7.6 Tipos de eventos
      • 7.6.1 Eventos de mouse
      • 7.6.2 Eventos de teclado
      • 7.6.3 Eventos HTML
    • 7.7 Delegação de evento
    • 7.8 Remoção de manipulador de evento
  • Capítulo 8  Objeto String
    • 8.1 Definições
      • 8.1.1 String como tipo de dado
      • 8.1.2 String como objeto
    • 8.2 Criar strings
    • 8.3 Propriedades das strings
      • 8.3.1 length
      • 8.3.2 constructor
      • 8.3.3 prototype
    • 8.4 Métodos para strings
      • 8.4.1 charAt(index)
      • 8.4.2 charCodeAt(index)
      • 8.4.3 concat(string1, string2,...,stringN)
      • 8.4.4 endsWith(stringProcurada [,indexFim])
      • 8.4.5 fromCharCode(uni1, uni2,...,uniN)
      • 8.4.6 includes(stringProcurada [,inicio])
      • 8.4.7 indexOf(stringProcurada [,inicio])
      • 8.4.8 lastIndexOf(stringProcurada [,inicio])
      • 8.4.9 localeCompare(string)
      • 8.4.10 repeat(count)
      • 8.4.11 match(expreg)
      • 8.4.12 replace(string | expreg, novaString | fn)
      • 8.4.13 search(expreg)
      • 8.4.14 slice(inicio [,fim])
      • 8.4.15 split([separador [,limite]])
      • 8.4.16 startsWith(stringProcurada [,inicio])
      • 8.4.17 substring(inicio [,fim])
      • 8.4.18 toLowerCase()
      • 8.4.19 toString()
      • 8.4.20 toUpperCase()
      • 8.4.21 trim()
  • Capítulo 9  Objeto Number
    • 9.1 Construtor
    • 9.2 Propriedades do objeto Number
      • 9.2.1 MAX_VALUE
      • 9.2.2 MIN_VALUE
      • 9.2.3 POSITIVE_INFINITY
      • 9.2.4 NEGATIVE_INFINITY
      • 9.2.5 constructor
      • 9.2.6 prototype
    • 9.3 Métodos do objeto Number
      • 9.3.1 Number isFinite(valor)
      • 9.3.2 Number isInteger(valor)
      • 9.3.3 Number parseFloat(string)
      • 9.3.4 Number parseInt(string [,base])
      • 9.3.5 toString([base])
      • 9.3.6 toFixed([digitos])
      • 9.3.7 toPrecision([digitos])
      • 9.3.8 toExponential([dígitos])
  • Capítulo 10  Objeto Math
    • 10.1 Conceitos
    • 10.2 Propriedades do objeto Math
    • 10.3 Métodos do objeto Math
      • 10.3.1 abs(x)
      • 10.3.2 sign(x)
      • 10.3.3 max(x, y, z, ..., n)
      • 10.3.4 min(x, y, z, ..., n)
      • 10.3.5 hypot(x, y, ..., n)
      • 10.3.6 round(x)
      • 10.3.7 floor(x)
      • 10.3.8 ceil(x)
      • 10.3.9 trunc(x)
      • 10.3.10 pow(x, y)
      • 10.3.11 sqrt(x)
      • 10.3.12 random()
      • 10.3.13 exp(x)
      • 10.3.14 log(x)
      • 10.3.15 log10(x)
      • 10.3.16 log2(x)
      • 10.3.17 log1p(x)
      • 10.3.18 sin(x)
      • 10.3.19 cos(x)
      • 10.3.20 tan(x)
      • 10.3.21 asin(x)
      • 10.3.22 acos(x)
      • 10.3.23 atan(x)
      • 10.3.24 atan2(y, x)
  • Capítulo 11  Objeto Date
    • 11.1 Introdução
    • 11.2 Construtor
      • 11.2.1 new Date()
      • 11.2.2 new Date(milissegundos)
      • 11.2.3 new Date(data_string)
      • 11.2.4 new Date(ano,mês[,dia][,hora][,minuto][,segundo][,milissegundo])
    • 11.3 Métodos get do objeto Date
      • 11.3.1 getDate()
      • 11.3.2 getFullYear()
      • 11.3.3 getMouth()
      • 11.3.4 getDay()
      • 11.3.5 getHours()
      • 11.3.6 getMinutes()
      • 11.3.7 getSeconds()
      • 11.3.8 getMillliseconds()
      • 11.3.9 getTime()
      • 11.3.10 getTimezoneOffset()
    • 11.4 Métodos set do objeto Date
      • 11.4.1 setDate(dia_do_mês)
      • 11.4.2 setYear(ano)
      • 11.4.3 setFullYear(ano [,mês][,dia])
      • 11.4.4 setMonth(month [,dia])
      • 11.4.5 setHours(hora [,min][,seg][,ms])
      • 11.4.6 setMinutes(min [,seg][,ms])
      • 11.4.7 setSeconds(seg [,ms])
      • 11.4.8 setMilliseconds(ms)
      • 11.4.9 setTime(ms)
    • 11.5 Outros métodos do objeto Date
      • 11.5.1 toLocaleDateString()
      • 11.5.2 toTimeString()
      • 11.5.3 toLocaleTimeString()
      • 11.5.4 toUTCString()
      • 11.5.5 toString()
      • 11.5.6 toGMTString()
    • 11.6 Manipulação de datas
      • 11.6.1 Contagem regressiva
  • Capítulo 12  Objeto RegExp
    • 12.1 Introdução
    • 12.2 Construtor
    • 12.3 Modificador
    • 12.4 Caracteres especiais
      • 12.4.1 Agrupadores
      • 12.4.2 Metacaracteres
      • 12.4.3 Quantificadores
      • 12.4.4 Memorizador
    • 12.5 Métodos do objeto RegExp
      • 12.5.1 test(str)
      • 12.5.2 exec(str)
      • 12.5.3 Métodos auxiliares
    • 12.6 Busca e troca
  • Capítulo 13  JSON
    • 13.1 Introdução
    • 13.2 JSON simples
    • 13.3 JSON com arrays
    • 13.4 JSON aninhado
    • 13.5 Métodos JSON
      • 13.5.1 Método JSON stringify()
    • 13.6 API
  • Capítulo 14  AJAX
    • 14.1 Introdução
    • 14.2 AJAX com API fetch
      • 14.2.1 Promises
      • 14.3.2 API Países
    • 14.3 AJAX com Axios
      • 14.3.1 API REQRES
  • Capítulo 15  CRUD com Node js e Express
    • 15.1 Introdução
    • 15.2 Node js
    • 15.3 Ambiente de desenvolvimento
      • 15.3.1 Instalação do Node js
      • 15.3.2 CLI
    • 15.4 REST API
    • 15.5 Apresentação da app livros
    • 15.6 CRUD na app livros
      • 15.6.1 Método GET
      • 15.6.2 Método POST
      • 15.6.3 Método PATCH
      • 15.6.4 Método DELETE
      • 15.6.5 POSTMAN
      • 15.6.6 Teste da app crud-livros
      • 15.6.7 Nota final
  • Capítulo 16  ES6 Miscelânea
    • 16.1 Introdução
    • 16.2 Módulos ES6
      • 16.2.1 Sintaxes
      • 16.2.2 Renomear importação e exportação
      • 16.2.3 Notas gerais sobre módulos
    • 16.3 Tratamento de erros
      • 16.3.1 Tipos de erros
      • 16.3.2 Instrução throw
      • 16.3.3 Bloco try catch finally
    • 16.4 Maps e sets
      • 16.4.1 Map
      • 16.4.2 WeakMap
  • Referências bibliográficas
  • Índice remissivo
Ver sumário completo ▼

Sobre o autor

Maurício Samy Silva

Maurício Samy Silva é graduado em Engenharia Civil pelo Instituto Militar de Engenharia (IME). Exerceu o magistério paralelamente à Engenharia e foi professor de Geometria Descritiva e Matemática. Sua experiência com desenvolvimento iniciou-se em 1999. Em 2003 lançou o site https://maujor.com, que se tornou referência nacional em CSS, com a… Ver perfil completo ▶

Opinião dos leitores

Lucimara de S T

O livro é para uma pessoa que já tenha conhecimento, é um bom livro.

Vicente E R M

Fantástico, o Maujor aborda de forma simples e didática, dando uma contribuição fenomenal para quem está, como eu, iniciando no JavaScript!

José O

Excelente compilado do que é realmente importante para um desenvolvedor front-end conhecer do JavaScript. Mestre Maujor, excelente, como sempre.

Ver todas ▼