Tutorial de JS

JS HOME Introdução JS JS Para onde Saída JS Declarações JS Sintaxe JS Comentários JS Variáveis ​​JS JS Let JS Const Operadores JS JS Aritmética Atribuição de JS Tipos de dados JS Funções JS Objetos JS Eventos JS Strings JS Métodos de string JS Pesquisa de String JS Modelos de String JS Números JS Métodos de número JS Matrizes JS Métodos de matriz JS Classificação de matriz JS Iteração de matriz JS Const da matriz JS Datas JS Formatos de data JS Métodos de obtenção de data JS Métodos de conjunto de datas JS JS Math JS Aleatório JS Booleanos Comparações JS Condições JS Interruptor JS Circuito JS para JS Loop Para Entrada JS Loop Para De JS Loop Enquanto Quebra de JS Iteráveis ​​JS Conjuntos JS Mapas JS Tipo JS de Conversão de tipo JS JS bit a bit JS RegExp Erros JS Escopo JS Içamento JS Modo estrito JS JS esta palavra-chave Função de seta JS Classes JS JS JSON Depuração JS Guia de estilo JS Práticas recomendadas de JS Erros de JS Desempenho JS Palavras reservadas JS

Versões JS

Versões JS JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE / Edge Histórico de JS

Objetos JS

Definições de objeto Propriedades do objeto Métodos de objeto Exibição de objetos Acessadores de objetos Construtores de objetos Protótipos de Objetos Iteráveis ​​de objeto Conjuntos de objetos Mapas de objetos Referência do objeto

Funções JS

Definições de função Parâmetros de função Invocação de função Chamada de Função Função Aplicar Fechamentos de Função

Classes JS

Introdução à aula Herança de classe Classe Estática

JS Assíncrono

Retornos de chamada JS JS Assíncrono Promessas JS JS Async/Aguardar

JS HTML DOM

Introdução ao DOM Métodos DOM Documento DOM Elementos DOM HTML DOM Formulários DOM CSS DOM Animações DOM Eventos DOM Ouvinte de eventos DOM Navegação DOM Nós DOM Coleções DOM Listas de nós DOM

BOM do navegador JS

Janela JS Tela JS Localização JS Histórico de JS Navegador JS Alerta pop-up JS Temporização JS Cookies JS

APIs da Web JS

Introdução à API da Web API de formulários da Web API de histórico da web API de armazenamento da Web API do trabalhador da Web API de busca da Web API de geolocalização da Web

JS AJAX

Introdução AJAX AJAX XML Http Solicitação AJAX Resposta AJAX Arquivo XML AJAX PHP AJAX ASP AJAX Banco de dados AJAX Aplicativos AJAX Exemplos AJAX

JS JSON

Introdução JSON Sintaxe JSON JSON x XML Tipos de dados JSON Análise JSON JSON Stringify Objetos JSON Matrizes JSON Servidor JSON JSON PHP HTML JSON JSON JSONP

JS x jQuery

Seletores jQuery HTML jQuery jQuery CSS jQuery DOM

Gráficos JS

Gráficos JS Tela JS JS Plotly JS Chart.js JS Google Chart JS D3.js

Exemplos JS

Exemplos JS JS HTML DOM Entrada HTML JS Objetos HTML JS Eventos HTML JS Navegador JS Editor JS Exercícios JS Teste JS Certificado JS

Referências JS

Objetos JavaScript Objetos HTML DOM


Objetos JavaScript


Em JavaScript, os objetos são reis. Se você entende objetos, você entende JavaScript.


Em JavaScript, quase "tudo" é um objeto.

  • Booleanos podem ser objetos (se definidos com a palavra- newchave)
  • Os números podem ser objetos (se definidos com a palavra- newchave)
  • Strings podem ser objetos (se definidos com a palavra- newchave)
  • Datas são sempre objetos
  • Matemática são sempre objetos
  • Expressões regulares são sempre objetos
  • Arrays são sempre objetos
  • Funções são sempre objetos
  • Objetos são sempre objetos

Todos os valores JavaScript, exceto primitivos, são objetos.


Primitivos JavaScript

Um valor primitivo é um valor que não possui propriedades ou métodos.

Um tipo de dados primitivo são dados que têm um valor primitivo.

JavaScript define 5 tipos de tipos de dados primitivos:

  • string
  • number
  • boolean
  • null
  • undefined

Os valores primitivos são imutáveis ​​(eles são codificados e, portanto, não podem ser alterados).

se x = 3,14, você pode alterar o valor de x. Mas você não pode alterar o valor de 3,14.

ValorModeloComente
"Olá"corda"Olá" é sempre "Olá"
3.14número3,14 é sempre 3,14
verdadeiroboleanoverdade é sempre verdade
falsoboleanofalso é sempre falso
nulonull (objeto)null é sempre null
IndefinidoIndefinidoindefinido é sempre indefinido

Objetos são variáveis

As variáveis ​​JavaScript podem conter valores únicos:

Exemplo

let person = "John Doe";

As variáveis ​​JavaScript também podem conter muitos valores.

Objetos também são variáveis. Mas os objetos podem conter muitos valores.

Os valores do objeto são escritos como pares name : value (nome e valor separados por dois pontos).

Exemplo

let person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};

Um objeto JavaScript é uma coleção de valores nomeados

É uma prática comum declarar objetos com a palavra- constchave.

Exemplo

const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};


Propriedades do objeto

Os valores nomeados, em objetos JavaScript, são chamados de propriedades .

Propriedade Valor
primeiro nome John
último nome Corça
era 50
cor dos olhos azul

Objetos escritos como pares de valor de nome são semelhantes a:

  • Arrays associativos em PHP
  • Dicionários em Python
  • Tabelas de hash em C
  • Mapas de hash em Java
  • Hashes em Ruby e Perl

Métodos de objeto

Métodos são ações que podem ser executadas em objetos.

As propriedades do objeto podem ser valores primitivos, outros objetos e funções.

Um método de objeto é uma propriedade de objeto que contém uma definição de função .

Propriedade Valor
primeiro nome John
último nome Corça
era 50
cor dos olhos azul
nome completo function() {return this.firstName + " " + this.lastName;}

Objetos JavaScript são contêineres para valores nomeados, chamados propriedades e métodos.

Você aprenderá mais sobre métodos nos próximos capítulos.


Criando um objeto JavaScript

Com JavaScript, você pode definir e criar seus próprios objetos.

Existem diferentes maneiras de criar novos objetos:

  • Crie um único objeto, usando um literal de objeto.
  • Crie um único objeto, com a palavra-chave new.
  • Defina um construtor de objeto e, em seguida, crie objetos do tipo construído.
  • Crie um objeto usando Object.create().

Usando um literal de objeto

Esta é a maneira mais fácil de criar um objeto JavaScript.

Usando um literal de objeto, você define e cria um objeto em uma instrução.

Um literal de objeto é uma lista de pares nome:valor (como idade:50) dentro de chaves {}.

O exemplo a seguir cria um novo objeto JavaScript com quatro propriedades:

Exemplo

const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};

Espaços e quebras de linha não são importantes. Uma definição de objeto pode abranger várias linhas:

Exemplo

const person = {
  firstName: "John",
  lastName: "Doe",
  age: 50,
  eyeColor: "blue"
};

Este exemplo cria um objeto JavaScript vazio e adiciona 4 propriedades:

Exemplo

const person = {};
person.firstName = "John";
person.lastName = "Doe";
person.age = 50;
person.eyeColor = "blue";

Usando a palavra-chave JavaScript new

O exemplo a seguir cria um novo objeto JavaScript usando new Object()e adiciona 4 propriedades:

Exemplo

const person = new Object();
person.firstName = "John";
person.lastName = "Doe";
person.age = 50;
person.eyeColor = "blue";

Os exemplos acima fazem exatamente o mesmo.

Mas não há necessidade de usar new Object().

Para legibilidade, simplicidade e velocidade de execução, use o método literal de objeto.


Objetos JavaScript são mutáveis

Objetos são mutáveis: eles são endereçados por referência, não por valor.

Se pessoa for um objeto, a seguinte declaração não criará uma cópia de pessoa:

const x = person;  // Will not create a copy of person.

O objeto x não é uma cópia de pessoa. É pessoa . Tanto x quanto pessoa são o mesmo objeto.

Quaisquer mudanças em x também mudarão de pessoa, porque x e pessoa são o mesmo objeto.

Exemplo

const person = {
  firstName:"John",
  lastName:"Doe",
  age:50, eyeColor:"blue"
}

const x = person;
x.age = 10;      // Will change both x.age and person.age