Pouvez-vous lier flèche fonctions?

J'ai fait des expériences avec des ES6 pour un certain temps maintenant, et je viens d'un léger problème.

J'aime vraiment l'aide des touches flèche fonctions, et quand je le peux, je les utilise.

Cependant, il semble que vous ne pouvez pas lier!

Voici la fonction:

var f = () => console.log(this);

Ici est l'objet que je désire lier la fonction:

var o = {'a': 42};

Et voici comment je voudrais lier f à o:

var fBound = f.bind(o);

Et puis je peux juste appeler fBound:

fBound();

Qui sera de sortie ce (la o objet):

{'a': 42}

Cool! Très joli! Sauf que cela ne fonctionne pas. Au lieu de reproduire les o objet, il génère le window objet.

Donc je voudrais savoir: vous pouvez lier flèche fonctions? (Et si oui, comment?)


J'ai testé le code ci-dessus dans Google Chrome 48 et Firefox 43, et le résultat est le même.

  • Le point de l'ensemble de la flèche fonctions est qu'elles utilisent le this de leur parent.
InformationsquelleAutor Florrie | 2015-10-23