从对象实例中获取变量名称
Get variable name from within object instance
我希望能够从方法内部访问这个类实例的var名称。 我可以在构造函数或其他东西上将实际的变量名称设置为字符串吗?
var myClass = function(filePath){
this.run = function(){
// I want to access the string "x"
console.log( this.variableName ); // ????
};
};
var x = new myClass("./sayHi.js");
构造变量名称时将其作为参数传递
var myClass = function(assigned_name,filePath){
this.variableName = assigned_name
this.run = function(){
console.log( this.variableName );
}
}
var x = new myClass('x','./sayHi.js');
x.run()
输出:
'x'
适用于:
虽然很多人说这毫无意义,但我遇到了我需要它的情况。 附带说明一下,许多jQuery操作都依赖于知道自己的变量名称是什么的原则。 它总是"$
"。 人们在将匿名函数分配给onclick事件时从jQuery方法内部引用"$
",却没有意识到这正是您的问题所要求的。
如果 myClass()
对象动态分配回调到特定类实例的事件处理程序,则需要执行此操作,因为这些调用通常依赖于保存在特定类变量中的信息。 由于你的myClass()
函数不像jQuery那样广泛,你不能指望它总是被分配给同一个变量,比如'$
'。
在构造时将其自己的赋值变量名称传递给自身是我发现的让我的类实例知道其全局引用是什么的最佳方式。
相关文章:
- AngularJS-在JSON选择器中使用变量名
- 命令行中的Uglify js;不要弄乱变量名
- 如何从函数内部的这个变量中获取值
- 像createComment这样的各种自定义变量名在内联javascript中被覆盖,但在外部js中没有.为什么?
- 这在JavaScript中是一个好的变量名吗
- Angular2/JavaScript-如何显示localStorage保存的所有变量并获取所有键的总长度
- 在javascript中,在变量名之前使用var有什么区别/优势吗
- 在Javascript中连接一个动态变量名
- 如何使用jQuery循环变量名
- JavaScript将字符串转换为变量名
- jquery没有't从DIV数据id中获取PHP变量值,只输出变量名
- 推送到数组从变量中获取的键名
- 在jquery中使用增量变量名从json中获取值
- 通过变量中的键名获取 javascript 对象属性
- 根据类名获取元素,并将元素存储在变量中
- 在prototype中定义的方法中获取变量名
- 是否可以通过使用函数内部声明的变量来获取函数名?
- 如何在函数中通过变量名获取元素
- 使用data-toggle获取变量名,并在函数中使用该变量名
- 根据变量名获取局部变量的值