Comprendre l'idiome JavaScript : var self = this
En JavaScript, vous pouvez rencontrer l'idiome 'var self = this' dans certains scénarios . Pour comprendre son objectif, considérons l'exemple de la démo WebKit HTML 5 SQL Storage Notes :
function Note() { var self = this; // ... }
Maintaining Context
Dans cet exemple, 'self' est utilisé pour conserver une référence au contexte d'origine « ce », même lorsque le contexte change dans les fonctions imbriquées. Les gestionnaires d'événements emploient souvent cette technique, en particulier dans les fermetures.
En attribuant « this » à « self », lorsque les fonctions internes sont appelées, elles peuvent toujours accéder au contexte « this » d'origine, ce qui est crucial pour accéder à l'instance. propriétés et méthodes.
Nom alternatif
Il convient de noter que le nom « soi » n'est qu'une convention. Les noms alternatifs comme « ça » sont également valables. La clé est d'établir une variable qui conserve la référence "this" d'origine.
Portée de la fonction
Les fonctions déclarées dans un contexte peuvent accéder aux variables et aux fonctions définies dans cette portée. ou dans des portées extérieures. Ce principe s'applique également aux fonctions imbriquées et aux fermetures.
Exemple
Considérez le rappel d'événement suivant :
function MyConstructor(options) { let that = this; // ... document.addEventListener('click', (event) => { alert(that.someprop); }); }
Dans cet exemple, ' cela' préserve le contexte de 'MyConstructor'. Le gestionnaire d'événements click peut désormais accéder à la propriété d'instance 'someprop' de l'objet créé avec 'MyConstructor'.
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!