2010-09-22 8 views
0

J'ai ce dans le HTML qui crée un objet JavaScriptjavascript trouver référence anonyme

var myObject = new MyClass(); 

Je sais que, après cela, je peux me référer à myObject et l'utiliser.

Le problème est que j'ai l'instanciation effectuée de manière anonyme, par ex.

new MyClass() 

Existe-t-il un moyen de trouver l'instance pour que je puisse la réutiliser plus tard dans le code? Toute idée appréciée.

+0

Cette question est trop générale pour pouvoir répondre comme ça. Pouvez-vous donner plus de détails? Plus important encore: Pourquoi ne pouvez-vous pas utiliser le code pour affecter l'objet à une variable? – RoToRa

+0

La partie qui contient "new MyClass()" est dispersée à travers des zillions de fichiers donc il faudrait une recherche et un remplacement massif, je cherche donc un moyen propre sans modifier les fichiers existants. S'il n'y a aucun moyen de le faire proprement, alors je vais chercher et remplacer. – dawez

Répondre

3

par exemple

lastOfMe = null 

function myClass() { 
    lastOfMe = this; 
    this.x = 123; 
} 

new myClass(); 
alert(lastOfMe.x) 

cela est tout à fait laid que

+1

+1 pour "c'est totalement moche" – einarmagnus

+0

Géré pour implémenter celui-ci avec et fonctionne bien. THX. – dawez

2

Cela dépend de la façon dont fonctionne MyClass ...

Il aurait pu sauver tous les cas, dans une propriété de classe, mais dans la plupart des cas, vous devez affecter le résultat de l'instanciation à une variable ...

1

objets anonymes sont juste que. Si vous voulez réutiliser votre objet, pourquoi le créer anonymement?

Si vous devez vraiment le faire, assurez-vous simplement que votre objet va s'enregistrer quelque part, comme une propriété d'un global ou similaire, afin que vous puissiez l'attraper plus tard.

Questions connexes