Où cela pointe-t-il dans les fonctions fléchées ES6 ?
Cette fois, je vais vous montrer où pointe ceci dans la fonction flèche ES6, et quelles sont les précautions lors de son utilisation dans la fonction flèche ES6. Voici un cas pratique, jetons un coup d'œil.
Brève introduction : Ceci dans la fonction flèche pointe vers une fonction définie différemment de la fonction générale. La définition de ceci dans la fonction flèche : ceci dans la fonction flèche est lié lorsque définit la fonction . Au lieu de lier lors de l'exécution de la fonction.
(1) Généralement, la fonction vers laquelle cela pointe est liée lors de l'exécution de obj.say(), cela pointe vers l'objet de obj.
var x=11; var obj={ x:22, say:function(){ console.log(this.x) } } obj.say(); //console.log输出的是22
var x=11; var obj={ x:22, say:()=>{ console.log(this.x); } } obj.say(); //输出的值为11
var a=11 function test1(){ this.a=22; let b=function(){ console.log(this.a); }; b(); } var x=new test1();
var a=11; function test2(){ this.a=22; let b=()=>{console.log(this.a)} b(); } var x=new test2(); //输出22
Remarque : les objets simples (non-fonctions) n'ont pas de contexte d'exécution !
Compréhension approfondie de cela dans la fonction flèche
Dans la fonction flèche, la fixation de ce point n'est pas parce que de la fonction flèche interne Il existe un mécanisme pour lier this. La vraie raison est que la fonction flèche n'a pas du tout son propre this, donc le this interne est le this du bloc de code externe. Précisément parce qu'il n'a pas cela, il ne peut pas être utilisé commeconstructeur .
Nous pouvons simuler la transformation de la fonction flèche dans ES5 :// ES6 function foo() { setTimeout(() => { console.log('id:', this.id); }, 100); } // ES5 function foo() { var _this = this; setTimeout(function () { console.log('id:', _this.id); }, 100); }
Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php. ! Lecture recommandée :
Comment changer le statut de la radio avec JS
Comment définir la table bootstrap sur le pourcentage de hauteur
La différence entre var foo = function () {} et function foo()
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Un collègue est resté bloqué à cause d'un bug signalé par ce problème de pointage de Vue2 qui a provoqué l'utilisation d'une fonction de flèche, entraînant l'impossibilité d'obtenir les accessoires correspondants. Il ne le savait pas quand je le lui ai présenté, puis j'ai délibérément regardé le groupe de communication front-end. Jusqu'à présent, au moins 70 % des programmeurs front-end ne le comprennent toujours pas. Aujourd'hui, je vais partager avec. vous ce lien. Si tout n'est pas clair Si vous ne l'avez pas encore appris, s'il vous plaît, faites-moi une grande gueule.

Cet article vous aidera à interpréter le code source de Vue et à vous expliquer pourquoi vous pouvez l'utiliser pour accéder aux propriétés de diverses options de Vue2. J'espère qu'il sera utile à tout le monde !

Utilisation flexible du mot-clé this dans jQuery Dans jQuery, le mot-clé this est un concept très important et flexible. Il est utilisé pour désigner l'élément DOM en cours de manipulation. En utilisant rationnellement ce mot-clé, nous pouvons facilement exploiter les éléments de la page et obtenir divers effets et fonctions interactifs. Cet article combinera des exemples de code spécifiques pour présenter l'utilisation flexible de ce mot-clé dans jQuery. Cet exemple simple Tout d'abord, regardons un exemple simple. Supposons que nous ayons un

1. ce mot-clé 1. Type de ceci : L'objet appelé est le type de référence de cet objet 2. Résumé de l'utilisation 1. this.data;//Attribut d'accès 2. this.func();//Méthode d'accès 3.this ( );//Appelez d'autres constructeurs de cette classe 3. Explication de l'utilisation 1.this.data est utilisé dans les méthodes membres. Voyons ce qui se passera si cela n'est pas ajouté classMyDate{publicintyear;publicintmonth;publicintday; intmois,intjour){oui

Qu'est-ce que c'est? L'article suivant vous présentera cela en JavaScript et parlera des différences entre cela dans les différentes méthodes d'appel de fonctions. J'espère que cela vous sera utile !

La fonction flèche en JavaScript est une syntaxe relativement nouvelle. Elle n'a pas son propre mot-clé this. Au contraire, le this de la fonction flèche pointe vers l'objet scope qui la contient. Les impacts sont : 1. Ceci dans la fonction flèche est. static ; 2. Les fonctions fléchées ne peuvent pas être utilisées comme constructeurs ; 3. Les fonctions fléchées ne peuvent pas être utilisées comme méthodes.

1.this référence 1.1 Pourquoi y a-t-il une référence this ? Tout d'abord, écrivons un exemple de classe de date : publicclassclassCode{publicintyear;publicintmonth;publicintday;publicvoidsetDay(inty,intm,intd){year=y;month=m;day= d;}publicvoidprintDate (){System.out.println(année+"-"+mois+"-"+jour);}publicstatic

Comment JavaScript modifie-t-il ce pointeur ? L'article suivant vous présentera trois méthodes pour modifier ce pointeur dans JS. J'espère qu'il vous sera utile !
