¿Cómo tratan this las arrow functions?
Opciones
- Siempre enlazan
thisal objeto global - No tienen
thispropio; viene del scope que las rodea (Opción correcta) thissiempre es undefined dentro de una arrow- Tratan
thisigual que las funciones normales
Respuesta
No tienen this propio; lo capturan de forma léxica del scope que las rodea
Por qué
En una function normal, this depende de CÓMO se llama la función (por ejemplo obj.method() → obj), lo que a menudo falla al pasarla como callback.
Las arrow functions no tienen this propio; usan el this del código que las rodea. Eso las hace perfectas para callbacks dentro de métodos.
No uses arrows para métodos de objeto que necesiten que this sea el objeto.
Recuerda
Las arrow functions toman this de donde están escritas.