Desarrollo en curso, en breve se publicarán el resto de temas.

Capítulo 4: Entrada de Datos y Console

La interacción con el usuario es fundamental en cualquier programa. Este capítulo explora cómo obtener datos del usuario y utilizar la consola como herramienta de comunicación y depuración.

4.1. prompt(): Lectura desde Diálogo Modal

prompt() abre un diálogo modal que permite al usuario ingresar texto.

let nombre = prompt("¿Cuál es tu nombre?");
console.log(nombre);

// Con valor por defecto
let edad = prompt("¿Cuántos años tienes?", "18");

// El usuario puede cancelar (retorna null)
let entrada = prompt("Introduce algo:");
if (entrada === null) {
    console.log("El usuario canceló");
} else {
    console.log("El usuario escribió:", entrada);
}

Limitaciones de prompt()

// prompt() siempre retorna una cadena (o null si cancela)
let edad = prompt("Ingresa tu edad:");
console.log(typeof edad);           // "string"

// Convertir a número
let edadNumerica = Number(edad);
console.log(typeof edadNumerica);   // "number"

// O mejor, usar parseInt
let edadEntera = parseInt(edad);

Validación con prompt()


4.2. confirm(): Confirmación Binaria del Usuario

confirm() abre un diálogo con dos opciones: Aceptar (true) o Cancelar (false).

Flujo de decisión con confirm()


4.3. alert(): Notificación al Usuario

alert() muestra un mensaje de alerta modal que el usuario debe confirmar.

Limitaciones de alert/prompt/confirm

  • Bloquean la ejecución del programa (síncronos)

  • Estilo visualmente anticuado

  • No personalizables (se ven iguales en todos los navegadores)

  • En producción, se prefieren interfaces HTML personalizadas


4.4. console como Herramienta de Depuración

La consola del navegador es tu mejor aliada para entender qué hace tu código.


4.5. console.log(), console.warn(), console.error()

console.log()

Muestra información general:

console.warn()

Muestra advertencias (en amarillo):

console.error()

Muestra errores (en rojo):


4.6. Formateo de Mensajes en Consola

Especificadores de formato

Estilos CSS en consola

Template strings en consola


4.7. console.table() y Otros Métodos Útiles

console.table()

Visualiza arrays y objetos como tabla:

console.group() y console.groupEnd()

Agrupa mensajes relacionados:

console.time() y console.timeEnd()

Mide el tiempo de ejecución:

console.assert()

Muestra un error si la condición es falsa:

console.count()

Cuenta cuántas veces se ejecuta:

console.clear()

Limpia la consola:


4.8. Buenas Prácticas con console

No dejar console.log() en producción

Usar niveles apropiados

Estructurar output


Resumen del Capítulo

Las funciones de entrada de datos (prompt, confirm, alert) y la consola son herramientas fundamentales para interactuar con el usuario y depurar código. Aunque en producción se prefieren interfaces HTML personalizadas, estas herramientas son excelentes para prototipado y aprendizaje.

💡 Conceptos Clave:

  • prompt(): Obtiene texto del usuario (retorna string o null)

  • confirm(): Confirmación binaria (true o false)

  • alert(): Notificación modal (retorna undefined)

  • console.log(): Mostrar información

  • console.warn(), console.error(): Niveles de gravedad

  • console.table(): Visualizar datos estructurados

  • console.time(): Medir rendimiento

  • console.group(): Organizar output

🤔 Preguntas de Reflexión:

  1. ¿Por qué prompt() siempre retorna una cadena?

  2. ¿Cuál es la diferencia entre alert() y console.log()?

  3. ¿Cuándo usarías confirm() en lugar de una simple pregunta de sí/no?

  4. Explica cómo debuggearías un bucle que no funciona correctamente.

  5. Escribe una función que pida datos al usuario y los valide usando prompt().

  6. ¿Por qué las funciones alert(), prompt() y confirm() son problemáticas en producción?


Última actualización

¿Te fue útil?