terça-feira, 13 de junho de 2017

Objetos


Há duas formas básicas para se criar um objeto vazio:

var obj = new Object();     

var obj = {};

Essas formas são semanticamente equivalentes e a segunda é chamada sintaxe literal do objeto e é mais conveniente. Esta sintaxe também é o núcleo do formato JSON e deve ser preferida todas as vezes. A sintaxe literal do objeto pode ser usada para iniciar um objeto em sua totalidade.

var obj = {
name: ’Cenoura’,
for: ’Mario’,
details: {
color: ’laranja’,
size: 12
}
}


Atributos dos objetos podem ser encadeados juntos:

obj.details.color; // orange
obj[’details’][’size’]; // 12


Os exemplos a seguir criam um protótipo de um objeto, Pessoa, e uma instância deste protótipo,Voce.

function Pessoa(nome, idade) {
this.nome = nome;
this.idade = idade;
}
 

// Define um objeto
var Voce = new Pessoa(’Voce’, 24);
// Estamos criando uma nova pessoa de nome  "Voce”
// com a idade igual a 24


Uma vez criado, as propriedades de um objeto podem ser criadas de dois modos:

obj.nome = ’Simonal’;
var nome = obj.nome;


E ...

obj[’nome’] = ’Simonal’;
var nome = obj[’nome’];


Essas formas também são semanticamente equivalentes. O segundo método tem a vantagem que o nome da propriedade é fornecido como uma string, o que significa que ela pode ser calculada em tempo de execução.

Contudo, o uso deste método previne que algumas máquinas Javascript utilizem certas otimizações de minimização. Esta forma também pode ser usada para atribuir propriedades com nomes que
são palavras reservadas no Javascript:

obj.for = ’Simonal’; // Erro de sintaxe, porque ’for’ é uma
// palavra reservada
obj[’for’] = ’Simonal’; // Funciona sem problemas


Nenhum comentário:

Postar um comentário