ECMA-262 definiert ein Objekt als: "Eine Sammlung ungeordneter Attribute, deren Attribute Grundwerte, Objekte oder Funktionen enthalten können."
Der einfachste Weg, ein Objekt zu verstehen, besteht darin, eine Instanz eines Objekts zu erstellen und dann Eigenschaften und Methoden hinzuzufügen
Die Codekopie lautet wie folgt:
var person = new Object ();
Person.name = "xulei";
Person.age = "23";
Person.job = "Front-End-Ingenieur";
Person.sayname = function () {
alarm (this.name);
}
Sie können dies auch schreiben
Die Codekopie lautet wie folgt:
var person = {
Name: "Xulei",
Alter: 23,
Job: "Front-End-Projekt",
SayName: function () {
alarm (this.name)
}
}
1. Attributtyp: Datenattribute und Zugriff auf ihre Attribute
1. Datenattribute mit 4 Eigenschaften, die ihr Verhalten beschreiben
[Konfigurierbar]: Gibt an, ob das Attribut gelöscht werden kann, um das Attribut neu zu definieren, ob die Eigenschaften des Attributs geändert werden können oder ob das Attribut an das Attribut des Accessors geändert werden kann, der Standardwert ist wahr
[Aufzählbar]: Gibt an, ob das Attribut durch das In-in zurückgegeben werden kann, der Standardwert ist wahr
[Schreibbar]: Gibt an, ob das Attribut geändert werden kann, der Standardwert ist wahr
[Wert]: Enthält den Datenwert dieser Eigenschaft. Der Standardwert ist undefiniert
Die Codekopie lautet wie folgt:
var person = {
Name: "Xulei"
}
Hier wird ein Personenobjekt erstellt, und der Wertwert ist "xulei"
So ändern Sie die Standardeigenschaften einer Eigenschaft, das Objekt von ECMAScript5.DefineProperty (das Objekt, in dem sich die Eigenschaft befindet, der Name der Eigenschaft, das Deskriptorobjekt) verwendet werden muss)).
Das Deskriptorobjekt muss konfigurierbar, aufzählbar, beschreibbar sein, Wert
Die Codekopie lautet wie folgt:
var Peron = {}
Object.DefineProperty (Peron, "Name", {
Beschreibbar: Falsch, // Die Eigenschaft kann nicht geändert werden
Wert: "xu lei-xulei"
});
Alert (Peron.Name); // xulei-xulei
Peron.name = "xu Lei";
Alert (Peron.Name); // xulei-xulei
Die obige Operation wird im Nichtstreifenmodus ignoriert und eine Ausnahme im strengen Modus ausgelöst.
Sobald die Eigenschaft als unkonfigurierbar definiert ist, kann sie nicht wieder konfigurierbar gemacht werden.
In den meisten Fällen ist es nicht erforderlich, diese vom Objekt bereitgestellten erweiterten Funktionen zu verwenden. DefineProperty () Methode. Aber es ist sehr nützlich, um JavaScript zu verstehen.
Den Lesern wird empfohlen, diese Methode nicht auf IE8 zu verwenden.
2. Zugriff auf seine Eigenschaften, es gibt 4 Eigenschaften
[Konfigurierbar]: Gibt an, ob das Attribut gelöscht werden kann, um das Attribut neu zu definieren, ob die Eigenschaften des Attributs geändert werden können oder ob das Attribut an das Attribut des Accessors geändert werden kann, der Standardwert ist wahr
[Aufzählbar]: Gibt an, ob das Attribut durch das In-in zurückgegeben werden kann, der Standardwert ist wahr
[GET]: Funktionen, die beim Lesen aufgerufen werden
[SET]: Funktion, die beim Schreiben von Attributen aufgerufen wird