[英]How can i use a string to reference a variable?
我有一个字符串数组:
arr = ["bar","baz"]
我有几个变量:
var bar = 'Hello';
var baz = 'bye';
使用数组,我如何输出:
hello
bye
我知道如何循环,但是,如何使用字符串来引用变量?
最好的选择是将变量存储为对象内的属性,并以这种方式引用它们:
var data = {
bar: "Hello",
baz: "Bye"
};
arr.forEach((key) => doStuff(data[key]));
如果做不到这一点,如果你有机会到其他范围(也许this
方法调用时),你可以保持变量的作用域属性。
如果没有其他可用范围,并且没有好的选择,则所有全局变量都将附加到self
(或window
,如果可用)范围,因此可以使用相同的window[key]
访问。
如果变量是全局变量,则可以使用window
元素的属性索引按名称访问它们:
arr = ["bar","baz"] var bar = 'Hello'; var baz = 'bye'; arr.forEach(function(item) { alert(window[item]); });
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.