Saltar al contenido

Proyecto: los tres mejores

JavaScript · Unidad 22: Buscar y ordenar

Un torneo de la app guarda un resultado por jugador: nombre, puntos y segundos que tardó.

La tabla va de más puntos a menos y, si dos empatan en puntos, adelante quien tardó menos. Dos criterios, un solo comparador.

const js = [
  { n: "Ana", pts: 9, seg: 50 },
  { n: "Leo", pts: 9, seg: 40 },
];
const cmp = (a, b) =>
  b.pts - a.pts || a.seg - b.seg;
const o = js.toSorted(cmp);
console.log(o.map((j) => j.n));

Imprime

[ 'Leo', 'Ana' ]

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 el desempate: con los mismos puntos, primero quien tardó menos segundos.

  2. 2. Escribe el código

    Escribe tabla(js): regresa un arreglo nuevo con los jugadores ordenados de más puntos a menos y, si empatan en puntos, de menos segundos a más. La lista que recibes no se toca. La función probar de abajo ya está lista y regresa los nombres en orden junto con el nombre del primero de la lista original.

  3. 3. Escribe el código

    Ahora el podio. Escribe top3(js): regresa un arreglo con los nombres de los tres primeros de la tabla, en orden. Si hay menos de tres jugadores, regresa los que haya; con la lista vacía, un arreglo vacío. La función tabla ya está escrita abajo: úsala.

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 →