Atributos de Objetos do JavaScript

As propriedades são a parte mais importante de qualquer objeto JavaScript.

Propriedades do JavaScript

Propriedade se refere a valores relacionados ao objeto JavaScript.

Os objetos JavaScript são conjuntos de propriedades não ordenadas.

As propriedades geralmente podem ser modificadas, adicionadas e removidas, mas algumas propriedades são apenas leitura.

Acessar propriedades do JavaScript

A sintaxe para acessar propriedades do objeto é:

objectName.property           // person.age

ou:

objectName["property]       // person["age"]

ou:

objectName[expression]       // x = "age"; person[x]

A expressão deve ser calculada como o nome da propriedade.

Exemplo 1

person.firstname + " is " + person.age + " years old.";

Experimente você mesmo

Exemplo 2

person["firstname"] + " is " + person["age"] + " years old.";

Experimente você mesmo

JavaScript for...in loop

JavaScript for...in A statement traverses the properties of an object.

syntax

for (variable in object) {
    Código a ser executado
}

for...in O bloco de código no ciclo será executado uma vez para cada propriedade.

Ciclo das propriedades do objeto:

Exemplo

var person = {fname:"Bill", lname:"Gates", age:62}; 
for (x in person) {
    txt += person[x];
}

Experimente você mesmo

Adicionar nova propriedade

Você pode adicionar novas propriedades através de atribuição simples, ao objeto existente.

Supondo que o objeto person já exista - então você pode adicionar novas propriedades:

Exemplo

person.nationality = "English";

Experimente você mesmo

Você não pode usar palavras reservadas como nomes de propriedade (ou método). Use as regras de nomeação do JavaScript.

Remover propriedade

delete Palavras-chave removem propriedades do objeto:

Exemplo

var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"};
delete person.age;   // ou delete person["age"];

Experimente você mesmo

delete As palavras-chave excluem tanto o valor da propriedade quanto a propriedade em si.

Após a exclusão, a propriedade não pode ser usada até ser adicionada novamente.

delete Os operadores são projetados para propriedades de objetos. Eles não têm impacto em variáveis ou funções.

delete Os operadores não devem ser usados em propriedades de objetos JavaScript pré-definidos. Isso pode fazer com que o aplicativo travasse.

Valor da Propriedade

Todas as propriedades têm um nome. Além disso, elas têm valores.

O valor é uma característica da propriedade.

Outras características incluem: enumeráveis, configuráveis, graváveis.

Essas características definem como as propriedades são acessadas (sejam leituras ou gravações?).

No JavaScript, todas as propriedades são leituras, mas apenas os valores podem ser modificados (apenas quando a propriedade for gravável).

(ECMAScript 5 possui métodos para obter e definir todas as características das propriedades).

Propriedades do Protótipo

Os objetos JavaScript herdam suas propriedades dos protótipos.

delete As palavras-chave não excluem propriedades herdadas, mas se você excluir uma propriedade do原型, isso afetará todos os objetos que herdam dessa原型.