Obtenir la classe d'objet à partir du nom de chaîne dans javascript

Je voudrais obtenir un objet de son nom en Javascript. Je travaille sur une application qui devra charger un contexte différent, j'essaie donc de charger différentes classes avec le plugin jquery "inherit". Tout fonctionne très bien, sauf que, lorsque j'ai besoin d'instanter une classe, je ne peux pas parce que je n'ai que le nom de la classe et non l'objet directement.

Fondamentalement, j'aimerais trouver quelque chose comme 'getClass (String name)'. Est-ce que quelqu'un pourrait m'aider?

N'utilisez pas eval() .

Vous pouvez stocker vos classes dans une carte:

 var classes = { A: <object here>, B: <object here>, ... }; 

Et alors cherchez-les:

 new classes[name]() 

JavaScript: fonction d'appel en fonction de String :

  function foo() { } this["foo"](); 

Est-ce que tu veut dire ça?

 function Person(name){ this.name = name; } function getClass(str_name, args){ return new (window[str_name])(args); } var wong2 = getClass("Person", "wong2"); alert(wong2.name); // wong2