10 trucos de Javascript que a lo mejor no conocías

martes, junio 04, 2013
COMPARTE EL POST

10 trucos de Javascript que a lo mejor no conocíasEse Javascript es un pillo ya que tiene bajo la manga muchos truquillos que sigo sin entender si es porque los creadores así lo quisieron o en realidad no revisaron bien su gramática y las producciones, lo que llevó a que haya muchas operaciones muy raras que el lenguaje te acepta, y recordemos que como es un lenguaje interprete no hay tampoco gran esfuerzo es darle un sentido a lo que podemos escribir, ya que no tiene compilador el navegador web. Bueno, de eso se trata el post del día de hoy.

Vamos a ver 10 trucos de Javascript que quizá no conocías, rarezas de la vida que probablemente no existen en otro lenguaje de programación, y sabiendo lo flexible que es Javascript la verdad es que no me sorprende tampoco que se puedan hacer cierto tipo de monadas y que de hecho funcionen.

1. Conversión de variables

En vez de usar las funciones propiamente para transformar un tipo de dato es mucho más eficiente utilizar los literales de a continuación

2. Convertir decimales a hexadecimales y a octales

En más de una ocasión vamos a necesitas transformar sistemas de numeración, de decimal a hexadecimal, o de decimal a octal, y Javascript curiosamente nos ayuda bastante en esa tarea.

3. Expresiones con números

Estas notaciones simplifican el uso de funciones que si bien también hacen la misma operación lo que hacemos es reducir unas cuantos minutos de programación.

4. Remover espacios blancos a la derecha e izquierda

Las expresiones regulares son de lo más poderoso en Javascript si se saben usar correctamente, como esta función que permite eliminar los espacios en blanco de una cadena o string, pero sólo elimina los espacios antes del inicio de los caracteres y después que se acaban, es decir, los espacios entre las palabras los conserva. Esto es bastante útil cuando hacemos llamadas asíncronas y los espacios en blanco no nos dejan validar correctamente los valores devueltos por otro archivo.

5. El uso de window.name para manejar sesiones

El objeto window tiene una propiedad name que permite asignarle un nombre a la ventana o pestaña activa, la cuál se conserva a menos que se cierre toda la ventana o pestaña. Es bastante útil porque podríamos usarlo como sesiones temporales o para testeos de nuestra aplicación o sitio web. No puse código porque el window.name depende ya más del uso específico.

6. Testear la existencia de algo

En Javascript tenemos NULL, undefined y otro que no recuerdo para poder testear si una variable, objeto, lo que sea no existe. Referenciando ese objeto, variable, etc. desde el objeto window podemos preguntar si existe, sin tener que saber el tipo de dato inexistente que tiene que regresar.

7. Pasar argumentos por función

Las buenas prácticas de la programación dicen que no hay que saturar una función con tantos argumentos, porque deja de ser elegante y además se ve mal tener tantos argumentos, mejor pasar un objeto como argumento, mucho más complejo pero mucho más eficiente.

En vez de hacer esto:

Hacemos lo siguiente:

Esto es un poco parecido a lo que podemos hacer en C++, crear una función que puede aceptar uno o varios argumentos, pero si no se llegan a completar los n argumentos de la función no importa porque de todas formas la función considera valores predeterminados en caso de no pasar alguno, solo que en este ejemplo es un objeto.

8. Usar document.createDocumentFragment()

El problema de insertar elementos en el DOM es que forzamos a que toda la pagina se renderee de nuevo, lo cual hace que si nuestro sitio o proyecto ya es bastante grande sufra de una demora en el redibujo. La función createDocumentFragment() ayuda a que la inserción o cualquier otro método para insertar, extraer, duplicar o eliminar elementos una vez que el DOM o la estructura interna está acomodada. Al mencionar redibujar quiero decir que todo el DOM se recalcula después de insertar el elemento, no después, por eso esta función es mucho más eficiente.

9. Jugar con los operadores lógicos

Los operadores lógicos no se usan solamente en los condicionales, podemos hacer un poco lo que hicimos en el truco 7, pero ahora manejando operadores lógicos para que creemos un efecto de polimorfismo, es decir, si la función en el ejemplo tiene 2 argumentos la función validará uno de los dos elementos a considerar con el OR, el primero que aparezca si existe el segundo argumento, de lo contrario se irá por el segundo.

10. Etiquetar loops o ciclos

No es una práctica recurrente (ni eficiente) el tener tantos ciclos anidados porque la complejidad se incrementa exponencialmente, pero puede que nos veamos en el caso de que queremos salir de un ciclo anidado con el break, pero no tenemos la plena confianza si sólo se va a salir el ciclo actual o del ciclo padre o del ciclo raíz. Para ello podemos etiquetar nuestros ciclos y así decirle al break de qué ciclo específicamente queremos salir.

Conclusiones

Estos trucos o datos curiosos de Javascript también se pueden implementar si usamos jQuery ya que estamos usando Javascript puro, nada de scripts raros ni nada por el estilo. Si se fijan bien hay cosas que podemos llegar a usar que del lado del usuario en realidad no le afecta mucho pero a nosotros si del lado del rendimiento, pero sobre todo, del lado de la facilidad para realizar ciertas tareas en menos tiempo, que al final ese es la intención. Espero hayan aprendido uno que otro tip o truco, sino al menos aquí tienen los códigos en caso de que lleguen a necesitarlos.

Vía icatalystcouk, hakoniemi

¿Ya habías implementado uno de estos trucos?

¡Síguenos en Twitter!


Deja tu comentario