Los valores truthy y falsy en JavaScript

| Última modificación: 18 de marzo de 2024 | Tiempo de Lectura: 3 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

En el mundo de la programación orientada a objetos existe un término que todos los desarrolladores deben conocer: los valores truthy y falsy en JavaScript. Estos valores tienen un papel crucial en el contexto booleano, ya que permiten que el intérprete del lenguaje evalúe cualquier cosa como verdadero o falso.

truthy y falsy

¿Qué son los valores truthy y falsy?

En esencia, cuando mencionamos los valores truthy y falsy en JavaScript nos referimos a cómo el lenguaje trata los datos al evaluarlos en una condición booleana, como un if o un while. En otras palabras, hablamos de qué valor asigna JavaScript cuando evalúa si una expresión es verdadera o falsa.

Valores truthy: cuando todo es positivo

Entre los valores truthy y falsy, los truthy son aquellos que se consideran verdaderos cuando se evalúan en un contexto booleano. En términos más sencillos, son los valores que JavaScript interpreta como true. Algunos ejemplos de valores truthy son:

  • Cadenas de texto no vacías: por ejemplo, 'hola'.
  • Números distintos a cero: como 42 o 3.14.
  • Objetos y arreglos: siempre que no estén vacíos.
  • La palabra clave true: por supuesto, true es siempre truthy.

Entonces, si tienes una variable que contiene una cadena de texto con contenido, un número diferente de cero o un objeto lleno de datos, al evaluarla en una condición booleana JavaScript la considerará truthy.

Valores falsy: cuando las cosas se vuelven falsas

Por otro lado, entre los valores truthy y falsy, los valores falsy son aquellos que JavaScript interpreta como false en un contexto booleano. Estos valores son esenciales para manejar casos específicos donde queremos identificar si una expresión es falsa. Algunos ejemplos de valores falsy son:

  • Cadenas de texto vacías: como ''.
  • El número 0: el cero es falsy, mientras que otros números son truthy.
  • Valores especiales null y undefined: estos son falsy por defecto.
  • La palabra clave false: obviamente, false es siempre falsy.

Si tienes una variable que contiene una cadena de texto vacía, el número cero o si no ha sido asignada a ningún valor (es decir, null o undefined), JavaScript la considerará falsy al evaluarla en un contexto booleano.

¿Qué hay detrás de la apariencia de los falsy?

Es importante tener en cuenta que, aunque algunos valores, como el cero o null, parezcan seguir una regla sólida al ser evaluados como falsy, no siempre es tan simple. Por ejemplo, el valor undefined es falsy por defecto, pero si definimos una variable y no le asignamos valor alguno, esa variable será truthy. Esto puede llevar a comportamientos inesperados y errores difíciles de detectar.

Variables sin tipo en JavaScript

En JavaScript, es crucial entender que las variables no tienen un tipo fijo. A diferencia de otros lenguajes, JavaScript permite que una variable cambie su contenido y tipo a lo largo del tiempo. Es decir, una variable puede contener un número en un momento y una cadena de texto en otro sin problemas.

Esta flexibilidad puede ser muy poderosa, pero también puede generar confusión si no se maneja con cuidado. En cambio, los datos que asignamos a las variables tienen tipos específicos, como números, cadenas de texto, objetos, etc.

Un consejo final

Antes de concluir, es importante destacar que el conocimiento sobre los valores truthy y falsy en JavaScript es esencial para el desarrollo web y la programación en general. Comprender cómo el lenguaje evalúa las condiciones booleanas te permitirá escribir código más claro y eficiente, así como evitar errores y obtener resultados precisos.

Si quieres aprender más sobre los valores truthy y falsy en JavaScript, inscríbete en nuestro Desarrollo Web Full Stack Bootcamp. No esperes más y únete a KeepCoding para dar un gran paso en tu carrera. ¡Apúntate ahora y prepárate para alcanzar el éxito en el apasionante mundo del desarrollo web!

Alberto Casero

Alberto Casero es CTO en Watium, Fundador de Kas Factory & Coordinador del Bootcamp en Desarrollo Web.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Desarrollo Web

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado