Objetos JavaScript
Objetos, propiedades y métodos de la vida real
En la vida real, un automóvil es un objeto .
Un automóvil tiene propiedades como peso y color, y métodos como iniciar y detener:
Objeto | Propiedades | Métodos |
---|---|---|
car.name = Fiat car.model = 500 car.weight = 850kg car.color = blanco |
coche.arranque() coche.conducir() coche.freno() coche.parada() |
Todos los autos tienen las mismas propiedades , pero los valores de las propiedades difieren de un auto a otro.
Todos los autos tienen los mismos métodos , pero los métodos se realizan en momentos diferentes .
Objetos JavaScript
Ya aprendió que las variables de JavaScript son contenedores para valores de datos.
Este código asigna un valor simple (Fiat) a una variable llamada coche:
let car = "Fiat";
Los objetos también son variables. Pero los objetos pueden contener muchos valores.
Este código asigna muchos valores (Fiat, 500, blanco) a una variable denominada automóvil:
const car = {type:"Fiat", model:"500", color:"white"};
Los valores se escriben como pares nombre:valor (nombre y valor separados por dos puntos).
Es una práctica común declarar objetos con la palabra clave const .
Obtenga más información sobre el uso de const con objetos en el capítulo: JS Const .
Definición de objeto
Usted define (y crea) un objeto JavaScript con un objeto literal:
Ejemplo
const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
Los espacios y los saltos de línea no son importantes. Una definición de objeto puede abarcar varias líneas:
Ejemplo
const person = {
firstName: "John",
lastName: "Doe",
age: 50,
eyeColor: "blue"
};
Propiedades del objeto
Los pares nombre:valores en los objetos de JavaScript se denominan propiedades :
Propiedad | El valor de la propiedad |
---|---|
primer nombre | John |
apellido | Gama |
envejecer | 50 |
color de los ojos | azul |
Acceso a las propiedades del objeto
Puede acceder a las propiedades de los objetos de dos formas:
objectName.propertyName
o
objectName["propertyName"]
Ejemplo 1
person.lastName;
Ejemplo2
person["lastName"];
Los objetos de JavaScript son contenedores para valores con nombre llamados propiedades.
Métodos de objeto
Los objetos también pueden tener métodos .
Los métodos son acciones que se pueden realizar sobre los objetos.
Los métodos se almacenan en propiedades como definiciones de función .
Propiedad | El valor de la propiedad |
---|---|
primer nombre | John |
apellido | Gama |
envejecer | 50 |
color de los ojos | azul |
nombre completo | function() {devuelve este.nombre + " " + este.apellido;} |
Un método es una función almacenada como una propiedad.
Ejemplo
const person = {
firstName: "John",
lastName : "Doe",
id : 5566,
fullName : function() {
return this.firstName + " " + this.lastName;
}
};
La esta palabra clave
En una definición de función, this
se refiere al "propietario" de la función.
En el ejemplo anterior, this
es el objeto persona el que "posee" la
fullName
función.
En otras palabras, this.firstName
significa la firstName
propiedad de este objeto .
Lea más sobre la this
palabra clave en JS this Keyword .
Acceso a métodos de objetos
Accede a un método de objeto con la siguiente sintaxis:
objectName.methodName()
Ejemplo
name = person.fullName();
Si accede a un método sin los paréntesis (), devolverá la definición de la función :
Ejemplo
name = person.fullName;
¡No declare cadenas, números y booleanos como objetos!
Cuando se declara una variable de JavaScript con la palabra clave " new
", la variable se crea como un objeto:
x = new String(); // Declares x as a String object
y = new Number(); // Declares y as a Number object
z = new Boolean(); // Declares z as a Boolean object
Evite los objetos String
, Number
y . Boolean
Complican su código y ralentizan la velocidad de ejecución.
Aprenderá más acerca de los objetos más adelante en este tutorial.