有没有办法在Javascript中以字符串的形式获取变量名?(就像Cocoa中的NSStringFromSelector
我想这样做:
var myFirstName = 'John';
alert(variablesName(myFirstName) + ":" + myFirstName);
--> myFirstName:John
更新
我正在尝试使用JavaScript连接浏览器和另一个程序。我想将实例名称从浏览器发送到另一个程序,用于回调方法:
FooClass = function(){};
FooClass.someMethod = function(json) {
// Do something
}
instanceA = new FooClass();
instanceB = new FooClass();
doSomethingInAnotherProcess(instanceB); // result will be substituted by using instanceB.someMethod();
...
来自另一个程序:
evaluateJavascriptInBrowser("(instanceName).someMethod("resultA");");
发布于 2011-01-05 16:43:47
通常,在希望将名称映射到某个值的情况下,您可以使用哈希表,并且能够同时检索这两个值。
var obj = { myFirstName: 'John' };
obj.foo = 'Another name';
for(key in obj)
console.log(key + ': ' + obj[key]);
发布于 2017-03-15 00:53:34
喜欢赛斯的回答,但使用Object.keys()
:
const varToString = varObj => Object.keys(varObj)[0]
const someVar = 42
const displayName = varToString({ someVar })
console.log(displayName)
发布于 2018-10-02 04:16:01
您可以使用以下解决方案来解决您的问题:
const myFirstName = 'John'
Object.keys({myFirstName})[0]
// returns "myFirstName"
https://stackoverflow.com/questions/4602141
复制相似问题