Javascript 获取变量的名称
在此代码中:Javascript 获取变量的名称,javascript,html,Javascript,Html,在此代码中: function myType(string){ this.string = string; this.getName = function(){ //return this.name; } } var myVar = new myType("string"); 如果我使用myVar.getName(),它应该返回myVar。我需要它来创建一个弹出框来更改页面的整个,因此获得这个函数对我来说很重要 我怎样才能做到 编辑: 我要做的是编写一
function myType(string){
this.string = string;
this.getName = function(){
//return this.name;
}
}
var myVar = new myType("string");
如果我使用myVar.getName()
,它应该返回myVar
。我需要它来创建一个弹出框来更改页面的整个
,因此获得这个函数对我来说很重要
我怎样才能做到
编辑: 我要做的是编写一个自定义对象。以下是步骤:
(1) call():调用内联弹出框,将页面的整个主体部分更改为弹出框;它将当前正文保存在此文档内容中 (2) hide():它使用
document.body.innerHTML
将主体更改为this.document\u content
按钮来关闭弹出框2(1)
中,我无法获取变量的名称以将其放入onclick
中的代码中
我能做什么?如果您想更改构造函数,可以这样做-
function myType(name, string){
this.string = string;
this.name = name;
this.getName = function(){
return this.name;
}
}
var myVar = new myType("myVar","string");
或者,您可以创建哈希:
function myType(name, string){
this.string = string;
this.name = name;
this.getName = function(){
return this.name;
}
var res = {}
res[name] = this;
return res;
}
// Add response to an hash
var hash = {}
$.extend(hash, new myType("myVar","string"));
我认为这是不可能的。您无法从对象实例内部确定引用它的名称。请记住,它可以在多个名称下引用。我不太明白您的意思……是的,在js中不可能。您能提供真实的示例吗?因为在这里,当调用
myVar.getName()时
,您已经知道myVar
的名称是myVar
,所以我看不出这种方法的目的……是的,我已经想到了,但我正在努力使它更方便。请参阅编辑-另一个选项