Nuestra lista de tipos de datos conocidos se compone de números, string, booleanos, undefined
, y arrays. En este módulo vamos a aprender uno nuevo: objetos.
Un objeto
es una colección de nombres y valores que denominamos propiedades. Nos van a servir para modelar información tal como lo hacemos en la vida real.
Para crear un objeto basta con usar {}
(llaves) y pares opcionales de nombres y valores para asignar propiedades al objeto en cuestión. Veamos un ejemplo:
// Declaro la variable nicolas y le asigno un objeto que describe
// las caracteristicas de esa persona
var nicolas = {
// Usamos la , (coma) al final para indicar que vamos a agregar más
// propiedades
nombreCompleto: 'Nicolas López',
altura: 2,
edad: 18,
peso: 79,
colorFavorito: 'Azul'
};
// Mostramos por la terminal el objeto `nicolas`
console.log(nicolas);
Podríamos decir que una propiedad es una variable
asociada a un objeto
. Estas propiedades funcionan igual que las variables que ya conocemos, solo que "viven en el contexto del objeto". Esto quiere decir que vamos a poder realizar operaciones y asignaciones como estamos acostumbrados usando la notación de . (puntos).
// Declaro y asigno una variable llamada `miGato` con la propiedad nombre
// equivalente a 'Tom'
var miGato = {
nombre: 'Tom'
};
// Muestro por pantalla solo el nombre de mi gato
console.log(miGato.nombre); // 'Tom'
// Asigno un nuevo nombre a mi gato
// (No sé por que motivo elegiría cambiárselo jaja)
miGato.nombre = 'Jerry';
// Muestro por pantalla el nuevo nombre de mi gato
console.log(miGato.nombre); // 'Jerry'
-
También podemos crear objetos de la siguiente manera:
var miGato = new Object({ nombre: 'Tom' });
-
Las propiedades de un objeto pueden contener todos los tipos de datos que ya aprendiste: números, string, booleanos, arrays e incluso otros objetos. Ejemplo:
var planeta = { nombre: 'Tierra', // propiedad de tipo string hayVida: true, // propiedad booleana numeroDeContinentes: 5, // propiedad numérica nombreDeContinentes: [ // propiedad de tipo array 'America', 'Europa', 'Asia', 'Oceanía', 'Africa' ], características: { // propiedad de tipo objeto hayAgua: true, cantidadDeLunas: 1 } };
-
Podés usar objetos como elementos de un array, como lo hiciste con los demás tipos de datos:
var usuarios = [ { nombre: 'Juan', edad: 20 }, { nombre: 'Pedro', edad: 30 }, { nombre: 'Brian', edad: 40 } ];
- Declará y asigná un objeto llamado
miRecetaMatadora
que contenga 3 propiedades:titulo
(string),porciones
(número) eingredientes
(array de string). Mostrar el objeto creado en la terminal - Escribí un programa que:
- Declare 3 objetos llamados
persona1
,persona2
ypersona3
con las siguientes propiedades:nombre
(string) yedad
(numero) - Declare un array llamado
usuarios
y use los 3 objetos anteriormente creados como elementos. - Muestre por la terminal la cantidad de usuarios del array.
- Muestre por la terminal la edad del segundo elemento del array.
- Muestre por la terminal el nombre del primer elemento del array.
- Declare 3 objetos llamados