jay*_*onp 10 javascript oop class
在Javascript中,如何在不使用eval()并传入参数的情况下动态实例化新类?例如,假设我想创建一个新的CatViewController并传入"小猫",我该怎么做?
var myClassname = "CatViewController";
var cat = new myClassname("kitten");
Run Code Online (Sandbox Code Playgroud)
它应该解决:
var cat = new CatViewController("kitten");
Run Code Online (Sandbox Code Playgroud)
谢谢!
只要函数在范围内,您就可以执行以下操作:
var cat = new this[myClassname]("kitten");
Run Code Online (Sandbox Code Playgroud)
另一种类似方式:
var classes = {
A: function (arg) {
},
B: function (arg) {
},
C: function (arg) {
}
};
var a = new classes["A"]("arg");
Run Code Online (Sandbox Code Playgroud)