Contenido del curso
0:00/69:41
Fundamentos de JavaScript con ejemplos en vivo
Suscríbete para ver másCómo resolver closures y arrays con JavaScript
Suscríbete para ver más30 días de JS con GNDX
play_circleViendo ahora30 días de JS con LeoCode
Suscríbete para ver más30 días de JS con Teffcode
Suscríbete para ver másSesión: Cierre de los 30 días de JavaScript
Suscríbete para ver másAprende a implementar una validación de formulario en JavaScript paso a paso, tal como se resolvió en una sesión de pair programming del reto de treinta días de JavaScript. Verás cómo analizar el problema, usar métodos de arrays y manejar errores de forma clara para garantizar datos consistentes y evitar correos duplicados.
¿Qué se resolvió y por qué importa en JavaScript?
Se implementó la función validateForm que recibe dos parámetros: formData (datos del formulario) y registeredUsers (usuarios ya registrados). La lógica cubre cuatro puntos clave:
El enfoque resaltó la importancia del análisis antes de codificar: entender requisitos, revisar la vista, inspeccionar datos y usar herramientas como console.log, linter o incluso ChatGPT para acelerar el diagnóstico.
¿Cómo validar formularios con arrays y objetos en JavaScript?
La solución aprovechó métodos de arrays como every, filter, some y find, además de estructuras de datos como FormData y utilidades como Object.keys para comprender el objeto recibido. Se recalcó que no se pedía validar el formato del correo con regex, solo la presencia de campos y la unicidad del email.
¿Cómo verificar campos requeridos con every y filter?
export function validateForm(formData, registeredUsers) { const requiredFields = ["name", "last name", "email", "password"]; if (!requiredFields.every(field => formData[field])) { const missing = requiredFields.filter(field => !formData[field]); throw new Error(`Faltan los siguientes campos requeridos: ${missing.join(', ')}`); } // ... (continuación abajo) }
Nota práctica: usar solo Object.keys(formData) te dice qué llaves existen, pero no si sus valores están vacíos. La validación debe revisar el valor de cada campo.
¿Cómo evitar emails duplicados con some o find?
const existsUser = registeredUsers.some(user => user.email === formData.email); if (existsUser) { throw new Error(`El usuario con el email ${formData.email} ya existe`); }
¿Cómo guardar el usuario sin exponer el password?
registeredUsers.push({ name: formData.name, "last name": formData["last name"], email: formData.email, }); return `Tu registro fue exitoso, ${formData.name} ${formData["last name"]}`; }
¿Qué habilidades y buenas prácticas se reforzaron?
Se enfatizaron hábitos que marcan la diferencia en el día a día:
¿Te gustaría compartir cómo validarías contraseñas o aplicarías una regex para email si el requerimiento lo pidiera? Cuéntalo en los comentarios y suma tu propia versión del reto.
HERNANDO RAMIREZ
Francisco Jesús Eslava Fernández
LUIS GUILLERMO NIETO PATIÑO
El ejercicio 41 inicia en el minuto: 10. Es verdad es importante aclarar las dudas y ser recursivo con cualquier herramienta
Vengan los 30 días de Python !!!
me gusto mucho como hizo el ejercicio