Para controlar el flujo adecuadamente, es importante entender qué tipos de valores son "verdaderos" y cuales "falsos". A veces, algunos valores pueden parecer una cosa pero al final terminan siendo otra.
Valores que devuelven verdadero (true)
'0'; // una cadena de texto cuyo valor sea 0 'any string'; // cualquier cadena []; // un array vacío {}; // un objeto vacío 1; // cualquier número distinto a cero
Valores que devuelven falso (false)
0; ''; // una cadena vacía NaN; // la variable JavaScript "not-a-number" (No es un número) null; // un valor nulo undefined; // tenga cuidado -- indefinido (undefined) puede ser redefinido
2.5.1. Variables condicionales utilizando el operador ternario
A veces se desea establecer el valor de una variable dependiendo de cierta condición. Para hacerlo se puede utilizar una declaración
if
/else
, sin embargo en muchos casos es más conveniente utilizar el operador ternario. [Definición: El operador ternario evalúa una condición; si la condición es verdadera, devuelve cierto valor, caso contrario devuelve un valor diferente.]
El operador ternario
// establecer a foo igual a 1 si bar es verdadero; // caso contrario, establecer a foo igual a 0 var foo = bar ? 1 : 0;
El operador ternario puede ser utilizado sin devolver un valor a la variable, sin embargo este uso generalmente es desaprobado.
2.5.2. Declaración switch
En lugar de utilizar una serie de declaraciones
if
/else
/else if
/else
, a veces puede ser útil la utilización de la declaración switch
. [Definición: La declaración Switch
evalúa el valor de una variable o expresión, y ejecuta diferentes bloques de código dependiendo de ese valor.]
Una declaración switch
switch (foo) { case 'bar': alert('el valor es bar'); break; case 'baz': alert('el valor es baz'); break; default: alert('de forma predeterminada se ejecutará este código'); break; }
Las declaraciones
switch
son poco utilizadas en JavaScript, debido a que el mismo comportamiento es posible obtenerlo creando un objeto, el cual posee más potencial ya que es posible reutilizarlo, usarlo para realizar pruebas, etc. Por ejemplo:var stuffToDo = { 'bar' : function() { alert('el valor es bar'); }, 'baz' : function() { alert('el valor es baz'); }, 'default' : function() { alert('de forma predeterminada se ejecutará este código'); } }; if (stuffToDo[foo]) { stuffToDo[foo](); } else { stuffToDo['default'](); }
Más adelante se abarcará el concepto de objetos.
Fuente:enlace
Si quieres seguir aprendiendo con nosotros, puedes ingresar a nuestros
No hay comentarios:
Publicar un comentario