MEDIAactive

Aprender Javascript Avanzado con 100 ejercicios prácticos


Скачать книгу

href="#fb3_img_img_7833d615-0e9a-5a90-aede-079f263f1e9e.jpg" alt="Img_p2"/> y dejará de ser booleano: Img_p3

      var caso1 = true; typeof caso1 == “boolean”

      var caso1 = false; typeof b == “boolean”

Img_p050-01 Img_p050-02

      4. Las instrucciones if/else Img_p4 son las más adecuadas para comprobar si se cumplen ciertas condiciones y, para mostrar los resultados de estas comprobaciones se suelen utilizar datos de tipo booleanos: Img_p5

      var hora = new Date();

      var horas = hora.getHours();

      if (horas<12) {

      formatoHora = ‘am’;

      }

      else { formatoHora = ‘pm’;

      }

Img_p051-00

      5. En este código se utilizará true o false para decidir si el formato de la hora debe mostrarse con ‘am’ o con ‘pm’. De ello dependerá si la hora es anterior a las 12 (true , entonces ‘am’) o después (false , entonces ‘pm’).

      6. ¿Cuándo una variable devuelve true y cuándo lo hace false ? A grandes rasgos, podemos decir que devuelve true cuando recibe un valor entre comillas o bien cualquier número que no sea 0. Img_p6 Y devuelve false cuando se omite un valor al constructor o bien si este valor es una cadena vacía, el valor 0 o, como hemos indicado anteriormente, la palabra false sin comillas. Img_p7

Img_p051-01 Img_p051-02

      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.Img_p1

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

      x = new Boolean(false);

      if (x)

      //En este caso, el resultado es true.

Img_p052

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

      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 . Img_p4

Img_p053

      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).

      021 Los operadores || y !

      EN EL EJERCICIO 14 DE ESTE libro tratamos de forma breve y descriptiva los tres operadores lógicos de JavaScript: && (AND), || (OR) y ! (NOT). En este ejercicio vamos a profundizar en dos de ellos para mostrar el modo en que pueden comportarse en sus scripts.

      1. Empezaremos este ejercicio hablando del operador lógico || (OR) y recordando su descripción: se utiliza, como el resto de operadores lógicos, para tomar decisiones en un script y se basan en los operandos booleanos true y false. En una sentencia que confronte dos operandos, el operador || producirá como resultado true en el caso en que uno de los dos operandos sea verdadero; en el caso en que ambos valores sean falsos, entonces el resultado será false. Img_p1

Img_p054-00

      2. Otro modo de gestionar el operador OR es el siguiente: Si el primer operando puede convertirse en true , la comparación devuelve true. De no ser así, el resultado será el segundo operando. Img_p2

Img_p054-01

      3. En ocasiones, una sentencia puede tener como valor (ya sea un parámetro o el resultado de una función) un valor nulo (undefined o null) o un valor real. Si deseamos proporcionar un valor predeterminado que sustituya a estos valores, es posible utilizar el operador ||. Un ejemplo resumido de uno de estos casos es el siguiente: Img_p3

      function guardarPrenda(prenda) {

      prenda = prenda || ‘’; ...

      }