<< Click to Display Table of Contents >> Objetos |
![]() ![]() ![]() |
Objetos em JavaScript
var livro = new Object();
function criarLivro() {
// aqui criamos um objeto
livro.titulo = "JavaScript";
livro.autor = "Sammy";
livro.paginas = 402;
livro.preco = 1.20;
}
function criarCapitulos() {
livro.capitulos = new Object();
livro.capitulos.cap1 = "capítulo 1";
livro.capitulos.cap2 = "capítulo 2";
livro.capitulos.cap3 = "capítulo 3";
livro.capitulos.cap4 = "capítulo 4";
}
var livroNovo = {
"titulo": "Ajax com JavaScript",
"autor": "Maurício",
"paginas": 423,
"preco": 40.53,
"capitulos":
{
"cap1": "cap1 - introdução",
"cap2": "cap2 - editor",
"cap3": "cap3 - conclusão"
}
};
// esta função para testar
function carregar() {
criarLivro();
criarCapitulos();
// exibe dados do objeto
console.log(livro);
// percorre todas propriedades de livro
for (var prop in livro)
console.log(prop + ":" + livro[prop]);
// mais complexo
console.log(livro.capitulos);
console.log(livro["autor"]);
console.log("------------------- livro novo -----------------");
// outro modo
console.log(livroNovo);
var saida = "";
for (var prop in livroNovo) {
saida += prop + ":" + livroNovo[prop] + "\n";
if (typeof livroNovo[prop] == "object") {
for (var prop1 in livroNovo[prop]) {
saida += " -- " + prop1 + ":" + livroNovo[prop][prop1] + "\n";
}
}
}
console.log(saida);
}
Saída
Object {titulo: "JavaScript", autor: "Sammy", paginas: 402, preco: 1.2, capitulos: Object}
autor: "Sammy"
capitulos: Object
cap1: "capítulo 1"
cap2: "capítulo 2"
cap3: "capítulo 3"
cap4: "capítulo 4"
__proto__: Object
paginas: 402
preco: 1.2
titulo: "JavaScript"
__proto__: Object
a.js:38
titulo:JavaScript a.js:42
autor:Sammy a.js:42
paginas:402 a.js:42
preco:1.2 a.js:42
capitulos:[object Object] a.js:42
Object {cap1: "capítulo 1", cap2: "capítulo 2", cap3: "capítulo 3", cap4: "capítulo 4"} a.js:45
Sammy a.js:46
------------------- livro novo ----------------- a.js:48
Object {titulo: "Ajax com JavaScript", autor: "Maurício", paginas: 423, preco: 40.53, capitulos: Object}
autor: "Maurício"
capitulos: Object
cap1: "cap1 - introdução"
cap2: "cap2 - editor"
cap3: "cap3 - conclusão"
__proto__: Object
paginas: 423
preco: 40.53
titulo: "Ajax com JavaScript"
__proto__: Object
a.js:51
titulo:Ajax com JavaScript
autor:Maurício
paginas:423
preco:40.53
capitulos:[object Object]
-- cap1:cap1 - introdução
-- cap2:cap2 - editor
-- cap3:cap3 - conclusão