Читать книгу Aprender Javascript Avanzado con 100 ejercicios prácticos - MEDIAactive - Страница 26
020 Convertir valores en booleanos
ОглавлениеCADA UNO DE LOS VALORES DE JavaScript (números, booleanos, texto, objetos y los valores undefined y null) pueden ser convertidos a booleanos. Como se verá en este ejercicio, a cada uno de estos valores le corresponde un valor booleano concreto.
1. Para poder convertir valores de JavaScript en datos booleanos, utilizaremos el objeto ‘Boolean’ como un objeto envolvente. Si no recuerda qué son los objetos envolventes, no dude en recuperar el ejercicio 9 de este libro.
2. El único parámetro que precisa es proceso de conversión de este tipo de datos es el de valor. Se tratará en este caso del valor inicial del objeto booleano. Si no existe ningún valor o éste es 0, -0, null, false, NaN, undefined o una cadena vacía, el valor inicial del objeto será false. El resto de valores crean un objeto con el valor inicial true. La tabla incluida en la imagen 1 indica el valor inicial y qué valor booleano le corresponde tras su conversión.
3. Cualquier objeto cuyo valor no sea undefined o null, incluyendo un objeto Boolean cuyo valor sea false, da como resultado true cuando se pasa a una sentencia condicional. ¿Qué significa esta afirmación? Lo entenderá fácilmente en el siguiente ejemplo:
x = new Boolean(false);
if (x)
//En este caso, el resultado es true.
4. JavaScript dispone de tres métodos para convertir manual-mente datos a booleanos. El primero de estos métodos, y el más defendido por los desarrolladores, pasa por invocar el objeto Boolean como una función y no como un constructor: Boolean(valor) . Un ejemplo de sentencias que siguen este método sería el siguiente:
Boolean(undefined) == false
Boolean(null) == false
Boolean(0) == false
Boolean(1) == true
Boolean(2) == true
Boolean(‘’) == false
Boolean(‘abc’) == true
5. El segundo método para convertir manualmente valores a booleanos es utilizando el operador condicional, incluido dentro del grupo de los operadores especiales de JavaScript: ? : . Como recordará, este operador sirve para realizar expresiones condicionales, sin tener en cuenta el grado de complejidad de las mismas. Si la condición escrita es verdadera, dará como resultado el valor true ; de otro modo, si la condición no es cierta, el resultado será false .
6. El tercer método que permite aplicar JavaScript es utilizar una doble negación delante del valor que deseamos convertir. Esta doble negación se consigue con los símbolos !!.
7. No queremos terminar sin advertir que no se deben confundir los datos primitivos booleanos true y false con los valores true y false del objeto Boolean. Del mismo modo, no debe utilizar un objeto Boolean en lugar de una primitiva booleano (true o false).