如果我有此代码
var obj = {
method: function() {
//do something
},
}
如何获取函数名称?如果我访问obj.func.name,当我想要“ obj.func”时,它只会给我“ func”。如何获取“ obj.func”?
最好不使用jQuery。
答案 0 :(得分:0)
你不知道。该函数对包含它的对象一无所知,甚至不知道该名称是否存在。
此外,如果执行此操作会发生什么:
var foo = obj;
您应该叫什么名字? obj或foo?
您实际上想做什么?您想使用该名称做什么?可能还有其他方法可以完成您实际想要完成的工作。
答案 1 :(得分:-1)
所以您要尝试通过函数名称引用对象属性?
var obj = {
func: function method(){
console.log(this.func.name);
}
};
obj.func(); // <- like this!
因此,如果要访问obj.func
属性及其函数名称,可以通过以下方式访问它:
obj.func.name // <- returns 'method'