Define valores por defecto en JavaScript
En JavaScript es posible utilizar el operador ||
para definir valores por defecto. Es decir si la expresión es 0
, ''
, null
, false
o undefined
, se tomará el valor definido por defecto.
Veamos como ejemplo el siguiente código:
function imprimirFruta(fruta) {
console.log(fruta);
}
imprimirFruta('manzana'); // 'manzana'
imprimirFruta('mango'); // 'mango'
imprimirFruta(); // undefined
imprimirFruta(0); // 0
imprimirFruta(''); // ''
imprimirFruta(null); // null
imprimirFruta(undefined); // undefined
En el ejemplo anterior tenemos una simple función que imprime en consola la 'fruta' que recibe. Sin embargo, si se recibe algún valor falsy
como 0
, ''
, null
, false
o undefined
estos son los que se imprimen.
Esto puede ser prevenido usando el operador ||
:
function imprimirFruta(fruta) {
// fruta = fruta || 'pera'
// console.log(fruta)
console.log(fruta || 'pera');
}
imprimirFruta('manzana'); // 'manzana'
imprimirFruta('mango'); // 'mango'
imprimirFruta(); // 'pera'
imprimirFruta(0); // 'pera'
imprimirFruta(''); // 'pera'
imprimirFruta(null); // 'pera'
imprimirFruta(undefined); // 'pera'
Es bueno tener precaución al usar el operador ||
debido a que si en algún momento se desea un valor como 0
o ''
y se tiene definido un valor por defecto, este será el que se use en cambio.
Otra forma de definir valores por defecto es a través de los parámetros de una función de lo cual escribí un artículo llamado Parámetros por defecto en JavaScript.
Saludos 😄