我有一种感觉,这可能是不可能的,但我想确定一个变量的原始变量名称,该变量已经传递给javascript中的函数.我不知道如何更好地解释它,所以看看这个例子是否有意义.
function getVariableName(unknownVariable){
return unknownVariable.originalName;
}
getVariableName(foo); //returns string "foo";
getVariableName(bar); //returns string "bar";
Run Code Online (Sandbox Code Playgroud)
这是我正在处理的jquery插件,我希望能够显示传递给"调试"函数的变量的名称.
dec*_*eze 20
你是对的,这在任何理智的方式都是不可能的,因为只有值被传递到函数中.
由于 ES6,这现在以某种方式成为可能:
function getVariableName(unknownVariableInAHash){
return Object.keys(unknownVariableInAHash)[0]
}
const foo = 42
const bar = 'baz'
console.log(getVariableName({foo})) //returns string "foo"
console.log(getVariableName({bar})) //returns string "bar"Run Code Online (Sandbox Code Playgroud)
唯一的(小)问题是您必须将未知变量包装在 之间{},这没什么大不了的。
| 归档时间: |
|
| 查看次数: |
7135 次 |
| 最近记录: |