Saltar al contenido

Lección 6 de 13 · Lectura y práctica

Funciones y Objetos

Lección práctica para aplicar Funciones y Objetos dentro de JavaScript Fundamentals, con criterios de decisión, ejemplo guiado, ejercicio y checklist de salida.

Del concepto a la práctica

Taller de esta lección

Una función puede recibir un objeto y devolver una decisión sin modificar el dato original. Esta separación hace visible la regla y evita depender de variables globales. En el ejemplo, la función calcula una etiqueta a partir de una tarea; el objeto conserva los datos y la función conserva el criterio.

Ejemplo resuelto

js
function estadoDe(tarea) {
  if (tarea.completada) return "hecha";
  if (tarea.minutos > 30) return "larga";
  return "pendiente";
}
const tarea = { titulo: "Informe", minutos: 45, completada: false };
console.log(estadoDe(tarea));
// larga

Pruébalo

  1. Crea una tarea de 20 minutos pendiente.

  2. Crea otra de 20 minutos completada.

  3. Ejecuta la función con ambas.

  4. Cambia solo la propiedad completada de la primera y compara.

Error frecuente: devolver siempre la etiqueta según minutos e ignorar completada. Corrige evaluando primero la condición que tiene prioridad.

Comprueba tu resultado

Los resultados deben ser pendiente para 20 minutos sin completar, hecha para 20 minutos completados y hecha tras marcar completada la primera. El objeto original no debe perder ninguna propiedad.

Un closure conserva acceso al entorno de la función que lo creó. Este contador mantiene n sin una variable global:

js
function crearContador() {
  let n = 0;
  return () => ++n;
}
const siguiente = crearContador();
console.log(siguiente(), siguiente()); // 1 2

Comprueba que un segundo contador creado con crearContador() empieza en 1 y no comparte el estado del primero.

Diagrama de decisión con ramas Sí y No y un bucle que procesa cada elemento de una lista.
CursaloMapa de práctica
Cómo avanza un programa

Una condición decide qué camino ejecuta el programa. Un bucle repite una operación mientras queden elementos, y termina cuando la lista se agota. Separar ambas ideas ayuda a seguir el flujo y comprobar casos límite.

Ver la infografía en tamaño completo ↗
Fuentes para profundizar
Funciones, scope, closures

Sigue con JavaScript Fundamentals

Esta lección forma parte de un curso de Cursalo. Revisa su programa y elige entre la compra individual o el acceso a toda la escuela.

Si ya tenías acceso a este curso, entra con tu cuenta: tus derechos y tu progreso se conservan. No necesitas comprarlo de nuevo.

01 / ELEGIR UNA RUTA

El próximo paso

Aprende IA mientras construyes algo que sí necesitas.

Empieza por el curso inicial o explora el catálogo para encontrar una práctica alineada con tu trabajo.