var, let, const
var
tiene scope en la función.
function dividir(x, y) {
if (y !== 0) {
var result;
result = x / y;
}
return result;
}
console.log( 'resultado: ' + dividir(10, 2) );
Este tipo de errores se solucionan usando let
function dividir(x, y) {
if (y !== 0) {
let result;
result = x / y;
}
return result; // peta - result is not defined
}
console.log( 'resultado: ' + dividir(10, 2) );
Para valores fijos, usaremos const
- que tiene scope de bloque - ya que no pueden ser reasignados (pero si modificados).
const PI = 3.141592;
const COLOR = {
nombre: 'Rojo',
hex: '#FF0000'
};
// peta - "COLOR" is read-only
COLOR = {
nombre: 'GRIS',
hex: '#CCC'
};
// pero esto si es válido
COLOR.nombre = 'GRIS';
COLOR.hex = '#CCC';