Descripción
Un valor falso es algo que se evalúa como FALSO, por ejemplo, al verificar una variable. Sólo hay seis valores Falsey en JavaScript: undefined
, null
, NaN
, 0
, ""
(cadena vacía), y false
por supuesto.
Comprobación de valores falsos en variables
Es posible verificar un valor falso en una variable con un condicional simple:
if (!variable) { // When the variable has a falsy value the condition is true. }
Ejemplos generales
var string = ""; // <-- falsy var filledString = "some string in here"; // <-- truthy var zero = 0; // <-- falsy var numberGreaterThanZero // <-- truthy var emptyArray = []; // <-- truthy, we'll explore more about this next var emptyObject = {}; // <-- truthy
Diversión con matrices
if ([] == false) // <-- truthy, will run code in if-block if ([]) // <-- truthy, will also run code in if-block if ([] == true) // <-- falsy, will NOT run code in if-block if (![]) // <-- falsy, will also NOT run code in if-block
Consideración
Tenga en cuenta el tipo de datos al evaluar un valor en un contexto booleano. Si el tipo de datos del valor debe ser un número , la evaluación de verdad / falsedad puede dar como resultado un resultado inesperado:
const match = { teamA: 0, teamB: 1 } if (match.teamA) // The following won't run due to the falsy evaluation console.log('Team A: ' + match.teamA); }
Una alternativa al caso de uso anterior es evaluar el valor usando typeof
:
const match = { teamA: 0, teamB: 1 } if (typeof match.teamA === 'number') console.log('Team A: ' + match.teamA); }
Más información
- verdad | Publicación de blog: Verdad y falsedad
- Falsy | Glosario | MDN
- Verdad y falsedad: cuando no todo es igual en JavaScript