Rullst AcademyRullst Academy/Lección
JavaScript e interacción · Lección 05 / 14

Listas con identidad

Dos misiones pueden compartir título sin ser la misma misión.

Rutas de aprendizaje16 min

Vamos a descubrir juntos

  1. 1

    Un objeto agrupa propiedades, como {id:1, title:"Leer", minutes:15, done:false}. Un array conserva una secuencia. El primer índice es cero; length indica cantidad, no el último índice.

  2. 2

    for...of recorre valores. map crea un array transformado; filter conserva elementos cuyo predicado es true. Ninguno congela los objetos contenidos: copiar un array no es copiar profundamente.

  3. 3

    Un id estable distingue misiones con títulos iguales. No uses la posición filtrada como identidad: eliminar o filtrar cambia los índices. El proyecto genera ids locales crecientes sin datos personales.

  4. 4

    Usa find para buscar una misión por id; si falta devuelve undefined. Suma con un acumulador o reduce empezando en cero. La lista vacía debe producir cero sin error.

Del ejemplo a tu propia interacción

Descarga el kit, extráelo y abre index.html en el navegador. Edita lesson.js, guarda y recarga. No necesitas Node ni paquetes. README explica HTTP local cuando sea necesario.

La demostración usa JavaScript preparado. No ejecuta código del editor. Descarga tu cambio aparte para probar en el kit local.

Mis archivos y GitHub
Probar el proyecto que construiremos

Planificador de pequeñas misiones

Crea, completa y revisa un plan de estudio con datos ficticios. Las misiones quedan solo en memoria y desaparecen al recargar.

Usa un título corto sin datos personales y minutos enteros de 1 a 120. Hasta 20 misiones.

Misiones del plan
0
Minutos de todas las misiones
0
Misiones terminadas
0

No hay misiones en este filtro. Añade una o elige otro filtro.

    Laboratorio de sugerencias

    Por defecto los escenarios se simulan en este navegador. No se envían peticiones de sugerencias ni se sustituye tu plan.

    Disponible al abrir el kit por http://127.0.0.1:8768. Consulta README; no necesitas cuenta externa.

      Este JSON contiene solo misiones, no código. La demostración no importa archivos ni sincroniza dispositivos. Descarga el JavaScript editado desde el espacio de archivos.

      Enlaces oficiales y siguiente paso

      ✦
      TU MISIÓN

      Representar misiones con objetos y recorrer, filtrar y transformar arrays.

      Ahora te toca

      Taller de descubrimientos

      Pensar antes de ejecutar

      La lista contiene {id:1, minutes:15, done:false} y {id:2, minutes:20, done:true}.
      Prepara tus respuestas y comprueba cuando estés listo.
      Una pausa para entender

      ¿Qué identidad resiste un filtro?

      Necesito una pista

      Predice el resultado, ejecuta tu archivo y explica la diferencia.

      Cargando tu camino…

      Llévatelo contigo

      Crea títulos iguales con ids diferentes. Filtra, cambia una misión por id y registra cuál quedó intacta.

      A tu ritmo

      Mis archivos y GitHub

      Cada lección puede convertirse en un registro propio: código, notas o un plan de práctica. Guardar un archivo en GitHub es opcional y no cambia tus XP.

      Manual del alumno

      El editor y las descargas se abren cuando esta lección esté disponible para tu cuenta. Revisa el acceso indicado abajo o vuelve al mapa de la ruta.

      Comprobando tu acceso a esta lección…

      Rullstpetbot

      La IA puede equivocarse. Consulta el material de la lección.