Bonjour à tous,
voilà, je suis tombé aujourd'hui sur une page très intéressante, qui explique comment "simuler" plusieurs aspect de la programmation OO en javascript avec des "closures":
http://www.litotes.demon.co.uk/js_in...tic.html#mProt
Par exemple, il est très facile de créer des variables statiques. Voici un exemple, j'imagine que pas mal de monde doit connaître:
C'est vraiment une bonne chose d'avoir une structure de classe cohérente à mon avis. Mais cette façon de faire me pose un problème sur un programme que je fais en ce moment. Comme j'utilise des events, j'ai souvent besoin de pouvoir faire référence à l'objet dans lequel je suis autrement que par "this". Habituellement, pas de problème, il est très facile de déclarer une variable "globale" attachée à une instance. Mais en faisant comme ci-dessus je ne trouve aucun moyen de faire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 var test = (function(){ var mavariable = 0; //statique function constructeur(){ //constructeur this.txt = "youpi"; } constructeur.prototype.youpi = function(){ alert(this.txt); } return constructeur; })();
Pour m'expliquer un peu mieux, j'aimerais pouvoir créer une variable "self" (par ex.) utilisable dans mon objet même dans des contextes où "this" ne fait plus référence à mon objet lui-même...
Si vous avez une idée, je suis preneur. J'espère que ce n'est pas trop mal expliqué.
Merci d'avance,
Smaon
Partager