22
loading...
This website collects cookies to deliver better user experience
console.log()
, la cual es una herramienta útil, pero no siempre es la más optima o precisa para la tarea de depuración o debugging.<!-- Index.html -->
<!DOCTYPE html>
<head> <title>suma</title> </head>
<body>
<h1>Depuracion de JavaScript</h1>
<label> Valor 1:
<input type="text" placeholder="123">
</label> <br />
<label> Valor 2:
<input type="text" placeholder="789">
</label> <br />
<button> Sumar valor 1 y valor 2 </button>
<p></p>
<script src="app.js"></script>
</body>
</html>
// app.js
function onClick() {
if (inputsAreEmpty()) {
label.textContent = 'Error';
return; }
updateLabel();
}
function inputsAreEmpty() {
if (getNumber1() '' || getNumber2() '') {
return true;
} else { return false; }
}
function updateLabel() {
var addend1 = getNumber1();
var addend2 = getNumber2();
var sum = addend1 + addend2;
label.textContent = addend1 + ' + ' + addend2 + ' = ' + sum;
}
function getNumber1() {
return inputs[0].value; }
function getNumber2() {
return inputs[1].value; }
var inputs = document.querySelectorAll('input');
var label = document.querySelector('p');
var button = document.querySelector('button');
button.addEventListener('click', onClick);
Command + Option + I
Control + Shift + I
sources | recursos
, lo presionamos y cambiara el contenido del panel.esc
. Muestra una consola en la cual podemos utilizar código de JavaScript.//app.js
function updateLabel() {
var addend1 = getNumber1();
console.log(`valor 1: ${addend1}`)
var addend2 = getNumber2();
console.log(`valor 2: ${addend2}`)
var sum = addend1 + addend2;
console.log(`Suma: ${sum}`)
label.textContent = addend1 + ' + ' + addend2 + ' = ' + sum;
console.log(`Texto asignado: ${addend1 + ' + ' + addend2 + ' = ' + sum}`)
}
debugger;
y regresemos a la pestaña de sources.//app.js
function updateLabel() {
var addend1 = getNumber1();
debugger;
var addend2 = getNumber2();
debugger;
var sum = addend1 + addend2;
label.textContent = addend1 + ' + ' + addend2 + ' = ' + sum;
debugger;
}
debugger
console.log()
, sin embargo hay varias ventajas." "
nos debería dar una idea de lo que podría estar fallando."1"
son tipos String
, mientras que los valores sin comillas dobles 1
son number
.typeof addend1
typeof addend2
typeof sum
esc
, y dentro de la consola escribe lo mismo.typeof addend1
typeof addend2
typeof sum
String
y no number
, podemos deducir que no está sumando, sino que está concatenando.enter
.parseInt(addend1) + parseInt(addend2)
function updateLabel() {
var addend1 = getNumber1();
var addend2 = getNumber2();
// var sum = addend1 + addend2;
var sum = parseInt(addend1) + parseInt(addend2)
label.textContent = addend1 + ' + ' + addend2 + ' = ' + sum;
}