En JavaScript, excepto el número, cadena, booleano, nulo y indefinido, todos los demás valores son objetos. Los objetos se pueden declarar directamente a través de literales o recién creados a través del nuevo operador. A diferencia del lenguaje Java, las propiedades en los objetos JavaScript se pueden agregar o eliminar dinámicamente; Al mismo tiempo, las propiedades en los objetos también pueden ser cadenas vacías:
La copia del código es la siguiente:
// Las propiedades en el objeto se pueden agregar/eliminar dinámicamente
var o = {x: 1, y: 2};
console.log (o); // objeto {x = 1, y = 2}
eliminar oy;
Oz = 3;
console.log (o); // objeto {x = 1, z = 3}
// La cadena vacía está permitida como propiedad del objeto
var o2 = {"": 88, "P": 99};
console.log (o2); // objeto {= 88, p = 99}
// Para la función de constructor, "nueva" operación devuelve un objeto.
function Computer (x, y) {
this.x = x;
this.y = y;
}
var c = nueva computadora (126, 163);
console.log (c); // computadora {x = 126, y = 163}
var c2 = nueva computadora (126); // El valor del parámetro faltante será "indefinido"
console.log (c2); // computadora {x = 126, y = indefinido}
cz = 66;
console.log (c); // computadora {x = 126, y = 163, z = 66}
eliminar cy;
console.log (c); // computadora {x = 126, z = 66}
Si la función que funciona no es un constructor de clase, pero es solo una función ordinaria cuando se usa el nuevo operador para crear un nuevo objeto, entonces JavaScript devolverá un objeto vacío después de ejecutar la función:
La copia del código es la siguiente:
// Para la función pura, la operación "nueva" devuelve un objeto vacío.
function Compute (x) {
console.log ("Ejecutar funciones de función");
regreso x*2;
}
var a = new Compute ();
console.log (a); // Compute {}
Propiedad de objetos
El objeto en JavaScript tiene las siguientes 3 propiedades:
1.Prototipo. Referencia, apuntando al objeto prototipo del objeto. El objeto puede heredar la propiedad en el objeto prototipo.
2. Clase. Una cadena, que representa el nombre de clase del objeto.
3. Extensible. Valor booleano, que indica si la adición dinámica de propiedades está permitida en el objeto. Esta propiedad solo es válida en ECMAScript 5.
Propiedades de propiedad
La propiedad en el objeto también tiene 3 propiedades:
1.Writable. ¿Es esta propiedad escribida?
2.Enumerable. Al usar la declaración for/in, ¿se enumerará la propiedad?
3. Configurable. Si las propiedades de la propiedad pueden modificarse y si la propiedad se puede eliminar.