其实这是办不到的,即使你把名字传进去也办不到。看看下面的例子你就明白了:function Detrox(name,age) { this.name = name;
this.age = age;
}
var a = new Detrox("a",19);
var b = a;
var c = b;
alert(c.name)现在a,b和c引用了同一个对象,你说这个对象应该认为自己的是叫a叫b还是叫c呢?它是没有办法知道的。只能是你一开始吧它叫什么他就以为自己叫什么。
this.age = age;
}
var a = new Detrox("a",19);
var b = a;
var c = b;
alert(c.name)现在a,b和c引用了同一个对象,你说这个对象应该认为自己的是叫a叫b还是叫c呢?它是没有办法知道的。只能是你一开始吧它叫什么他就以为自己叫什么。
var instanceName="trox";
eval('var '+instanceName+' = new Detrox("yjn","19")');
之后通过 instanceName 就能得到变量名了。