Saltar al contenido principal
Codigo Heroe
Tarea anterior
Objetos4/25
A la lista de tareas
  1. 1. Una función para lanzar los dados
  2. 2. Pasar los datos de los participantes
  3. 3. Sumar puntos con +=
  4. 4. Crear un objeto
  5. 5. Leer propiedades con la notación de punto
  6. 6. Un arreglo de objetos
  7. 7. Modificar las propiedades de un objeto
  8. 8. Referencias a objetos
  9. 9. Agrupar las reglas en un objeto
  10. 10. Un ciclo para los intentos
  11. 11. Una función para encontrar ganadores
  12. 12. Recorrer los objetos de un arreglo
  13. 13. Buscar la puntuación máxima
  14. 14. Agregar ganadores con push
  15. 15. Detectar un empate general
  16. 16. Construir el mensaje de los ganadores
  17. 17. Agregar participantes y cambiar las reglas
  18. 18. Ajustar el mensaje con condiciones
  19. 19. Devolver un objeto desde una función
  20. 20. Crear y llamar a un método
  21. 21. Leer propiedades desde un método
  22. 22. Un objeto como diccionario
  23. 23. Notación de corchetes
  24. 24. El contexto de la llamada y this
  25. 25. Crear otro objeto con la misma función
Siguiente tarea
  • Matriz de skills
  • Cursos
  • Registro
  • Iniciar sesión

Loading…
En unos segundos, estará listo.

  • Teoría
  • Teoría

Crear un objeto

Cada participante lanza los dados y recibe puntos. Todo funciona, pero observa cuántos parámetros tiene runGame. ¿Qué pasará si participan tres, cuatro, cinco o diez gatos? ¿Y si necesitamos más datos sobre cada uno? La respuesta es evidente: una función con cuarenta y dos parámetros. Pero no tomaremos ese camino.

Cada gato tiene un conjunto de datos: nombre y puntos. ¿Existe una forma más cómoda de guardar valores que pertenecen a una misma entidad? Sí: los objetos.

Un objeto es un tipo de dato que guarda información en pares «clave-valor». Un arreglo es una lista numerada, donde cada elemento tiene un índice. En un objeto, cada valor está asociado a una clave y, para trabajar con estos datos, no necesitamos un número de posición. Veamos un ejemplo: un objeto que describe a un gato.

Crear un objeto. Primero hay que crearlo. Para eso usamos las llaves { }, que ya conoces. Guardaremos el objeto en una variable, cuyo nombre se elige como el de cualquier otra.

// Creamos un objeto y lo guardamos en cat
let cat = {};

Agregar propiedades. Los pares «clave-valor» de un objeto se llaman propiedades o atributos. Se escriben así:

let cat = {
  // Nueva propiedad: name es la clave y 'Cupcake' es el valor
  name: 'Cupcake',
  // Otra propiedad: la clave es age y el valor es 5
  age: 5
};

Identificamos cada propiedad por su clave. Podemos decir que el objeto del gato tiene una propiedad para guardar el nombre, con la clave name y el valor 'Cupcake', o simplemente que tiene la propiedad name con el valor 'Cupcake'.

Las claves de un objeto deben ser únicas. Si repetimos una clave en un literal de objeto como este, se conserva el último valor.

Algunas reglas de sintaxis:

  • La clave y el valor se separan con dos puntos.
  • Los pares «clave-valor» se separan con comas.
  • Los valores pueden ser de cualquier tipo: número, cadena, arreglo, etcétera.

En lugar de usar varias variables sueltas, creemos objetos para los participantes. Cada uno tendrá una propiedad para el nombre y otra para los puntos.

La escritura de un objeto con sus propiedades entre llaves se llama literal de objeto. Para crear uno de esta forma basta con usar las llaves y, si tiene propiedades, escribirlas dentro.

  • script.js
JavaScript
let diceNumber = 2; let firstCatName = 'Cupcake'; let firstCatPoints = 0; let secondCatName = 'Rodolfo'; let secondCatPoints = 0; let runGame = function (quantity, firstPlayerName, firstPlayerPoints, secondPlayerName, secondPlayerPoints) { firstPlayerPoints += keks.throwDice(quantity, quantity * 6); secondPlayerPoints += keks.throwDice(quantity, quantity * 6); console.log(firstPlayerName + ' sacó ' + firstPlayerPoints); console.log(secondPlayerName + ' sacó ' + secondPlayerPoints); }; runGame(diceNumber, firstCatName, firstCatPoints, secondCatName, secondCatPoints);
Consola

El código ha cambiado, haga clic en "Ejecutar" o active la ejecución automática.

Resultado de la ejecución

ObjetivosRealizado
0
    1. Antes de runGame, agrega el objeto del primer participante: firstCat.
    2. Agrega a firstCat una propiedad para el nombre: clave name, valor 'Cupcake'.
    3. Después de firstCat, agrega el objeto secondCat con el nombre 'Rodolfo'.
    4. Agrega a cada objeto una propiedad para los puntos: clave points, valor 0.
    Codigo Heroe

    © 2023-2026, codigoheroe.com