Dans JavaScript, à l'exception de Number, String, Boolean, Null et Undefined, toutes les autres valeurs sont des objets. Les objets peuvent être déclarés directement via littéraux ou nouvellement créés via le nouvel opérateur. Contrairement à la langue Java, les propriétés des objets JavaScript peuvent être ajoutées ou supprimées dynamiquement; Dans le même temps, les propriétés des objets peuvent également être des chaînes vides:
La copie de code est la suivante:
// Les propriétés de l'objet peuvent être ajoutées / supprimées dynamiquement
var o = {x: 1, y: 2};
console.log (o); // objet {x = 1, y = 2}
supprimer oy;
oz = 3;
console.log (o); // objet {x = 1, z = 3}
// La chaîne vide est autorisée en tant que propriété d'objet
var o2 = {"": 88, "p": 99};
console.log (o2); // objet {= 88, p = 99}
// Pour la fonction du constructeur, l'opération "nouvelle" renvoie un objet.
Ordinateur de fonction (x, y) {
this.x = x;
this.y = y;
}
var c = nouvel ordinateur (126, 163);
console.log (c); // ordinateur {x = 126, y = 163}
var c2 = nouvel ordinateur (126); // La valeur du paramètre manquant sera "non définie"
Console.log (C2); // Computer {x = 126, y = Undefined}
CZ = 66;
console.log (c); // ordinateur {x = 126, y = 163, z = 66}
supprimer cy;
console.log (c); // ordinateur {x = 126, z = 66}
Si la fonction qui fonctionne n'est pas un constructeur de classe, mais n'est qu'une fonction ordinaire lors de l'utilisation du nouvel opérateur pour créer un nouvel objet, alors JavaScript renverra un objet vide après avoir exécuté la fonction:
La copie de code est la suivante:
// Pour la fonction pure, l'opération "nouvelle" renvoie un objet vide.
Fonction Compute (x) {
console.log ("Exécuter Fonction Compute");
retour x * 2;
}
var a = nouveau calcul ();
console.log (a); // calculer {}
Propriété d'objet
L'objet dans JavaScript a les 3 propriétés suivantes:
1.Protype. Référence, pointant vers l'objet prototype de l'objet. La propriété de l'objet Prototype peut être héritée par l'objet.
2.Classe. Une chaîne, représentant le nom de classe de l'objet.
3. Extensible. Valeur booléenne, indiquant si l'ajout dynamique des propriétés est autorisé dans l'objet. Cette propriété n'est valable que dans ECMAScript 5.
Propriétés de la propriété
La propriété dans l'objet possède également 3 propriétés:
1.Witable. Cette propriété est-elle écrivative?
2. Énumérable. Lorsque vous utilisez l'instruction FOR / IN, la propriété sera-t-elle énumérée?
3. Configurable. Si les propriétés de la propriété peuvent être modifiées et si la propriété peut être supprimée.