Objetos JavaScript
En JavaScript, los objetos son los reyes. Si entiendes los objetos, entiendes JavaScript.
En JavaScript, casi "todo" es un objeto.
- Los booleanos pueden ser objetos (si se definen con la
new
palabra clave) - Los números pueden ser objetos (si se definen con la
new
palabra clave) - Las cadenas pueden ser objetos (si se definen con la
new
palabra clave) - Las fechas son siempre objetos.
- Las matemáticas son siempre objetos.
- Las expresiones regulares son siempre objetos.
- Los arreglos son siempre objetos.
- Las funciones son siempre objetos.
- Los objetos son siempre objetos.
Todos los valores de JavaScript, excepto los primitivos, son objetos.
Primitivas de JavaScript
Un valor primitivo es un valor que no tiene propiedades ni métodos.
Un tipo de datos primitivo son datos que tienen un valor primitivo.
JavaScript define 5 tipos de tipos de datos primitivos:
string
number
boolean
null
undefined
Los valores primitivos son inmutables (están codificados y, por lo tanto, no se pueden cambiar).
si x = 3.14, puedes cambiar el valor de x. Pero no puede cambiar el valor de 3.14.
Valor | Escribe | Comentario |
---|---|---|
"Hola" | cuerda | "Hola" es siempre "Hola" |
3.14 | número | 3.14 es siempre 3.14 |
cierto | booleano | la verdad siempre es verdad |
falso | booleano | falso siempre es falso |
nulo | nulo (objeto) | nulo siempre es nulo |
indefinido | indefinido | indefinido es siempre indefinido |
Los objetos son variables
Las variables de JavaScript pueden contener valores únicos:
Ejemplo
let person = "John Doe";
Las variables de JavaScript también pueden contener muchos valores.
Los objetos también son variables. Pero los objetos pueden contener muchos valores.
Los valores de los objetos se escriben como nombre: pares de valor (nombre y valor separados por dos puntos).
Ejemplo
let person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
Un objeto JavaScript es una colección de valores con nombre
Es una práctica común declarar objetos con la const
palabra clave.
Ejemplo
const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
Propiedades del objeto
Los valores con nombre, en los objetos de JavaScript, se denominan propiedades .
Propiedad | Valor |
---|---|
primer nombre | John |
apellido | Gama |
envejecer | 50 |
color de los ojos | azul |
Los objetos escritos como pares de valor de nombre son similares a:
- Matrices asociativas en PHP
- Diccionarios en Python
- Tablas hash en C
- Mapas hash en Java
- Hashes en Ruby y Perl
Métodos de objetos
Los métodos son acciones que se pueden realizar sobre los objetos.
Las propiedades de los objetos pueden ser valores primitivos, otros objetos y funciones.
Un método de objeto es una propiedad de objeto que contiene una definición de función .
Propiedad | Valor |
---|---|
primer nombre | John |
apellido | Gama |
envejecer | 50 |
color de los ojos | azul |
nombre completo | function() {devuelve este.nombre + " " + este.apellido;} |
Los objetos de JavaScript son contenedores de valores con nombre, llamados propiedades y métodos.
Aprenderá más sobre los métodos en los próximos capítulos.
Creación de un objeto de JavaScript
Con JavaScript, puede definir y crear sus propios objetos.
Hay diferentes formas de crear nuevos objetos:
- Cree un solo objeto, utilizando un objeto literal.
- Cree un solo objeto, con la palabra clave
new
. - Defina un constructor de objetos y luego cree objetos del tipo construido.
- Crea un objeto usando
Object.create()
.
Uso de un objeto literal
Esta es la forma más fácil de crear un objeto JavaScript.
Usando un objeto literal, usted define y crea un objeto en una declaración.
Un objeto literal es una lista de pares nombre:valor (como edad:50) dentro de llaves {}.
El siguiente ejemplo crea un nuevo objeto JavaScript con cuatro propiedades:
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"
};
Este ejemplo crea un objeto JavaScript vacío y luego agrega 4 propiedades:
Ejemplo
const person = {};
person.firstName = "John";
person.lastName = "Doe";
person.age = 50;
person.eyeColor = "blue";
Uso de la palabra clave JavaScript new
El siguiente ejemplo crea un nuevo objeto JavaScript usando new Object()
y luego agrega 4 propiedades:
Ejemplo
const person = new Object();
person.firstName = "John";
person.lastName = "Doe";
person.age = 50;
person.eyeColor = "blue";
Los ejemplos anteriores hacen exactamente lo mismo.
Pero no hay necesidad de usar new Object()
.
Para mejorar la legibilidad, la simplicidad y la velocidad de ejecución, utilice el método literal de objeto.
Los objetos de JavaScript son mutables
Los objetos son mutables: se direccionan por referencia, no por valor.
Si person es un objeto, la siguiente declaración no creará una copia de person:
const x = person; // Will not create a copy of person.
El objeto x no es una copia de la persona. es persona _ Tanto x como persona son el mismo objeto.
Cualquier cambio en x también cambiará de persona, porque x y persona son el mismo objeto.
Ejemplo
const person = {
firstName:"John",
lastName:"Doe",
age:50, eyeColor:"blue"
}
const x = person;
x.age = 10; // Will change both x.age and person.age