Javascript: Usar switch para evaluar criterios múltiples

Ayer haciendo el trabajo cotidiano me tope con una lista devuelta por la base de datos y para varios casos la acción a realizar era la misma. En primera instancia pensé en usar sentencias If/Else anidadas pero no estuve convencido del todo. Luego me decidí por usar switch y encontré que habían 2 formas para lograrlo*:

Forma 1:

Aqui para cada “case” se deja en blanco y se omite el uso de break,  de esa forma el código avanza hasta el que contiene el “break”.

var loQueEvaluamos = 1;

switch(loQueEvaluamos) {
     case 0:
     case 1:
     case 2:
             alert('aplica para los casos 1, 2 y 3');
             break;
     default:
             alert('nada');
}

Forma 2:
Esta es una forma más sofisticada de lograrlo, lo que hace es evaluar ‘true’ y luego pone las condiciones.

var loQueEvaluamos = 1;

switch(true) {

     case loQueEvaluamos > 20  && loQueEvaluamos <= 26;
             alert('evaluado');
             break;
     default:
             alert('nada');
}

* El original del artículo se encuentra en: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/switch

Advertisements

Google translate como herramienta de aprendizaje

Estoy siguiendo un curso de inglés que usa la plataforma de Edusoft (http://www.edusoftlearning.com) que para mi estilo de aprendizaje ha resultado bastante bueno.  Al igual que todo curso de inglés tiene secciones de lectura, escritura, pronunciación y vocabulario.

Como herramienta de apoyo para aprender el nuevo vocabulario estoy usando Google Translate (translate.google.com).  Resulta que además de traducir las palabras, esta herramienta permite marcar la palabra traducida como favorita.

Image

De esta forma he creado una lista en el Phrasebook con todas las palabras que son nuevas para mi y que debo asegurarme de aprender.   También es posible exportar todas las palabras junto con su traducción a una hoja electrónica de Google Sheets.

Image

Al final ya llevo un registro de 113 palabras que debo asegurarme de comprender, aprender y memorizar.