Error o fallo en el código que provoca que un programa no funcione correctamente.
La depuración (debugging) es el proceso de encontrar y corregir estos errores. Los bugs pueden ser de sintaxis, lógica o runtime.
// Tipos comunes de bugs // 1. Error de sintaxis - detectado por el compilador const x = ; // SyntaxError // 2. Error de runtime - ocurre al ejecutar const obj = null; obj.propiedad; // TypeError: Cannot read property // 3. Error lógico - código funciona pero mal function calcularPromedio(numeros) { let suma = 0; for (let i = 0; i <= numeros.length; i++) { // Bug: <= debería ser < suma += numeros[i]; } return suma / numeros.length; } // Debugging con console console.log('Valor:', variable); console.table(arrayDeObjetos); console.trace(); // Stack trace debugger; // Punto de interrupción