🌟 ¡Despeja tus dudas con las funciones BIND, CALL y APPLY de #JavaScript!
¡Te las explico a continuación! 🧵👇
"Bind", "Call" y "Apply" son funciones de JavaScript que nos permiten trabajar con el objeto THIS cuando éste pierde la referencia al contexto que queremos.
👇
Cuando tienes por ejemplo un objeto con funciones que hacen referencia a otros parámetros internos, y esta función es llamada desde fuera, THIS hace referencia a otro contexto (Como por ejemplo "window" si estas en el navegador o "global" desde #NodeJS)
👇
Imagina éste código de ejemplo que utilizaremos para explicar las 3 funciones.
👇
💻 bind()
Este método crea una nueva función que cuando es llamada, le otorga el 'this' al valor provisto. Si llamamos al método, el 'this' se pierde ya que el contexto ahora es otro y no encuentra el atributo, pero con "bind" se soluciona.
👇
💻 call()
El resultado es el mismo que con 'bind', lo que cambia es la forma de llamarlo, se hace directamente y mantiene el contexto.
👇
💻 apply()
Funciona y se llama prácticamente igual que .call(), la diferencia es que los argumentos se pasan como array.
👇
Es uno de los pilares de JavaScript como lenguaje. Manejar el flujo del programa es esencial para trabajar con JavaScript
Estos son los principales métodos para que la domines 🧵👇
🤷🏽♀️ ¿Por qué usarla?
Permite que múltiples cosas ocurran al mismo tiempo.
Cuando inicias una acción, tu programa sigue en marcha. Cuando la acción finaliza, el programa es informado y obtiene acceso al resultado.
👇
🤔 ¿Cuándo utilizar la asincronía?
En operaciones bloqueantes, que son cuando leemos o escribimos en disco, o cuando hacemos una petición HTTP (Fetch) para traer o enviar datos al servidor a través de una API o WebService.
👇