Saltar al contenido

Proyecto: tabla de posiciones

JavaScript · Unidad 10: Más sobre funciones

Tu tabla de posiciones ordena a los jugadores de más a menos puntos. Recuerda que sort cambia el arreglo: ordena una copia con [...].

Y algo nuevo: map le pasa a tu flecha un segundo dato, el lugar de cada elemento, contando desde 0.

const jugadores = [
  { nombre: "Leo", pts: 12 },
  { nombre: "Ana", pts: 15 },
];
const tabla = [...jugadores].sort(
  (a, b) => b.pts - a.pts
);
const lineas = tabla.map(
  (j, i) => `${i + 1}. ${j.nombre}`
);
console.log(lineas);
console.log(jugadores[0].nombre);

Imprime

[ '1. Ana', '2. Leo' ]
Leo

Ejercicios de esta lección

Se hacen en la app, que los corrige al momento y explica por qué.

  1. 1. Completa el código

    Completa comparar: primero va quien tiene más puntos y, si empatan, el orden alfabético. Debería imprimir Ana, Leo y Val.

  2. 2. Escribe el código

    Escribe ordenar(jugadores), que regrese a los jugadores en el orden de la tabla: primero quien tiene más puntos y, si empatan, en orden alfabético. Ordena una copia, para no desacomodar la lista original.

  3. 3. Escribe el código

    Ya tienes ordenar. Escribe posiciones(jugadores), que regrese un arreglo de textos como "1. Ana (15)", uno por jugador, en el orden de la tabla.

Hacer esta lección

Se abre en el navegador. Esta lección es del plan completo; la primera unidad de cada curso es gratis.

Ver todas las lecciones →