Skip to content

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:

javascript
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 ||:

javascript
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 😄