我有一个联网的应用程序,通过将一系列浮动数据推送到客户端来实时更新多个参数。我希望每次启动服务器时都可以轻松地修改浮点数组到客户端脚本中预先存在的变量的映射(例如,通过更改JSON文件)
在连接到服务器时,客户端会收到一个参数列表:
["delayTime", "feedbackAmount", "backgroundColor"]
未来消息:
[0.01, 0.4, 0.9]
使相同名称的变量相等:
delayTime = 0.01;
feedbackAmount = 0.4;
backgroundColor = 0.9;
我可以将这些字符串/对象键转换为它们的关联变量,并使相应的浮点数组更新它们,而不指定每条消息上的目标(因为更改的浮点数是通过服务器发送它们的速度来的)?通过类比......如果它只是两个数组的相应值:
for (int i = 0; i < floatArray.length; i++){
variable[i] = floatArray[i]
}
但变量[i]的值正在更新我已初始化的相关变量。
我希望这是有道理的;我无法绕过它,但看起来它应该相当简单。
答案 0 :(得分:0)
不要这样做,创建另一个包含如下对象的数组。
[
{
"key": "delayTime",
"value": 0.01
},
{
"key": "feedbackAmount",
"value": 0.4
},
{
"key": "backgroundColor",
"value": 0.9
}
]
MAP两个数组
let a = ["delayTime", "feedbackAmount", "backgroundColor"];
let b = [0.01, 0.4, 0.9];
let tempArray;
tempArray = a.map(function (x, i) {
return {"key": x, "value": b[i]}
}.bind(this));
console.log(tempArray);