gpt4 book ai didi

javascript - Jscript:是否可以动态设置变量?

转载 作者:行者123 更新时间:2023-11-28 16:05:30 24 4
gpt4 key购买 nike

config.txt中,我有以下字符串:

Dispatcher=argo
Address=10.5.23.14
User=joe

在我的script.js中,我有变量:

var Dispatcher, Address, User;

在 script.js 中,我读取 config.txt,解析字符串并获取名称/值对:

ConfigPair = ConfigString.split("=");
VarName = ConfigPair[0];
VarValue = ConfigPair[1];

我想要的是将 VarValue 分配给 VarName 变量。比如说,如果我在 VarName 中得到“Address”,在 VarValue 中得到“10.5.23.14”,我想将 Address 变量设置为 10.5.23.14。

不想做这样的事情:

if (VarName == "Dispatcher") {
Dispatcher = VarValue;
} else if (VarName == "Address") {
Address = VarValue;
} else if bla-bla-bla

我想以某种方式“读取” VarName 的值并将 VarValue 分配给相应的变量。是否可以在 Windows Script Host (JScript) 中执行此操作?我玩过eval,但没能成功。有什么想法吗?

谢谢,浣熊

最佳答案

如果您在浏览器中工作,您可以使用全局 window 对象,如下所示:

// VarName = "User"
// VarValue = "joe"
window[VarName] = VarValue;
alert(User); // prints "joe"
User = 'jack';
alert(User); // prints "jack"
<小时/>

编辑

使用 WSH 和 Windows 7 进行测试:

(function () {
var VarName = 'User'; // ConfigPair[0]
var VarValue = 'joe'; // ConfigPair[1]
this[VarName] = VarValue;
})();
WSH.Echo(User); // prints "joe"
WSH.Quit();

关于javascript - Jscript:是否可以动态设置变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15172073/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com