我正在创建一个 JavaScript 代码,我遇到了一种情况,我想在对象方法中读取对象名称(字符串)。我想要实现的示例代码如下所示:
// Define my object
var TestObject = function() {
return {
getObjectName: function() {
console.log( /* Get the Object instance name */ );
}
};
}
// create instance
var a1 = TestObject();
var a2 = TestObject();
a1.getObjectName(); // Here I want to get the string name "a1";
a2.getObjectName(); // Here I want to get the string name "a2";
我不确定这在 JavaScript 中是否可行。但如果是这样,我很想听听你们如何实现这一目标。
原文由 programmer 发布,翻译遵循 CC BY-SA 4.0 许可协议
这在 JavaScript 中是不可能的。变量只是对对象的引用,同一个对象可以被多个变量引用。无法判断使用了哪个变量来访问您的对象。但是,如果您将
name
传递给您的构造函数,您可以返回它: