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

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.

Comentarios