Saltar al contenido principal
Codigo Heroe
Tarea anterior
Objetos6/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

Un arreglo de objetos

Los objetos nos permitieron describir a los participantes de forma cómoda y usar sus datos en la función. Tenemos menos parámetros, pero vuelve la pregunta: ¿qué pasa si participan diez gatos? ¿Creamos más objetos? ¡Sí! Aunque todavía hay dos problemas:

  • La cantidad de parámetros seguirá creciendo con la cantidad de participantes.
  • El cuerpo de la función crecerá, porque cada participante necesita sus propias líneas para sumar puntos y mostrar resultados. Cuantos más participantes, más código.

Sería genial escribir la función para que sirviera con cualquier cantidad de participantes. ¿Existe una estructura que pueda guardar muchos datos y sea fácil de recorrer? ¡Los arreglos! ¡Ya los conoces!

Un pequeño recordatorio: un arreglo es una lista de elementos, y cada uno tiene un índice. Así se crea un arreglo y se leen sus elementos:

// Arreglo de números
let array = [10, 20, 30, 40, 50];

// Leemos los elementos por su índice
console.log(array[0]); // Muestra: 10
console.log(array[3]); // Muestra: 40

Si necesitas repasar cómo funcionan los arreglos, vuelve al capítulo «Arreglos».

Volvamos al juego. Crearemos un arreglo con los objetos de los participantes y se lo pasaremos a la función. Así podremos recorrerlo con un ciclo y hacer lo mismo con cada participante: lanzar los dados, guardar el resultado y mostrarlo.

  • script.js
JavaScript
let diceNumber = 2; let firstCat = { name: 'Cupcake', points: 0 }; let secondCat = { name: 'Rodolfo', points: 0 }; let runGame = function (quantity, firstPlayer, secondPlayer) { firstPlayer.points += keks.throwDice(quantity, quantity * 6); secondPlayer.points += keks.throwDice(quantity, quantity * 6); console.log(firstPlayer.name + ' sacó ' + firstPlayer.points); console.log(secondPlayer.name + ' sacó ' + secondPlayer.points); }; runGame(diceNumber, firstCat, secondCat);
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, crea el arreglo cats con los elementos firstCat y secondCat.
    2. En la declaración de runGame, sustituye los parámetros firstPlayer y secondPlayer por players.
    3. En la llamada a runGame, sustituye los argumentos firstCat y secondCat por cats.
    4. Reemplaza todo el código del cuerpo de runGame por un ciclo que incremente i desde 0 hasta players.length, sin incluir ese valor. Incrementa i en uno después de cada iteración.
    5. Dentro del ciclo, muestra en la consola el elemento actual del arreglo players.
    Codigo Heroe

    © 2023-2026, codigoheroe.com