Javascript 如何根据不一致消息更改变量?

Javascript 如何根据不一致消息更改变量?,javascript,variables,discord,discord.js,Javascript,Variables,Discord,Discord.js,我正在开发一个discord机器人,并试图根据用户输入更改变量。代码的功能应该有点像这样: const w = "something"; const r = "something else"; var a1 = w; execute(message, args){ if (!args.length){ message.channel.send("no arguments"); } else {

我正在开发一个discord机器人,并试图根据用户输入更改变量。代码的功能应该有点像这样:

const w = "something";
const r = "something else";
var a1 = w;

execute(message, args){
    if (!args.length){
        message.channel.send("no arguments");
    } else {
        var args[0] = args[1];
    }
}
我想发生的是,当一个用户处于不一致类型时

!command a1 r

变量a1变为“其他”。我如何才能做到这一点?

您可以在此处使用
对象
/
映射
,而不是变量

比如:

const consts = {
  w: "something",
  r: "something else"
};

const variables = {
  a1: consts.w
};

execute(message, args){
    if (!args.length){
        message.channel.send("no arguments");
    } else {
        variables[args[0]] = consts[args[1]];
    }
}
然而,我不知道你想做什么好的做法。
使用可变变量是bug的一个大窗口,特别是如果用户可以更改它的话。

您可以在此处使用
对象
/
映射
,而不是变量

比如:

const consts = {
  w: "something",
  r: "something else"
};

const variables = {
  a1: consts.w
};

execute(message, args){
    if (!args.length){
        message.channel.send("no arguments");
    } else {
        variables[args[0]] = consts[args[1]];
    }
}
然而,我不知道你想做什么好的做法。
使用可变变量是一个很大的漏洞窗口,特别是如果用户可以更改它的话。

我只是将它用于一个小型服务器的小型bot,并且我还实现了一个重置功能,以使所有内容恢复默认值,这样就不会产生任何大问题。谢谢你的帮助!我只是将它用于一个小型服务器的小型bot,我还实现了一个重置功能,以使所有内容恢复到默认状态,这样就不会产生任何大问题。谢谢你的帮助!