如何分配2个或+变量

时间:2016-07-04 00:28:44

标签: javascript arrays

抱歉,我是法国人,我用英语说几句话。 我有一个问题可能是愚蠢的:

原始代码:var test = { commandChar : "!", };

    for (i = 0; i < commands.length; i++) {
    if (commands[i].hasOwnProperty('alt')) {
        for (j = 0; j < commands[i].alt.length; j++) {
            if ((index = text.toLowerCase().search(new RegExp("^\\" + test.commandChar + commands[i].alt[j].toLowerCase() + "\\b"))) >= 0) {
                break;
            }
        }
    }

    if (index < 0) {
        index = text.toLowerCase().search("^\\" + "[" + test.commandChar + ",@#]" + commands[i].name.toLowerCase() + "\\b");
    }

    if (index > -1) {
        var command = text.slice(index).split(" ");
        if (!(commands[i].op || commands[i].elevated) || host || mod || authorised) {
            if (!(commands[i].mod) || host || mod) {
                commands[i].command(command, user);
            }
        }
        else {
            //sendChat("You have to be authorised to use " + commands[i].name + ".");
        }
        break;
    }
}

这是一个小机器人,例子。 如果是commandChar:&#34;!&#34;。 !帮助工作,但/帮助不工作。 我想要使​​用这个带有许多符号的commandChar 喜欢 commandChar:&#34;!&#34;,&#34; /&#34 ;;

使用!help和/ help

我认为应该或者数组或者regexpr

对不起,如果我没有正确表达自己,那很复杂,谢谢

1 个答案:

答案 0 :(得分:0)

有很多方法可以做到,但这里很快:

function isValidCommandChar(str) {
  return "!/.".indexOf(str.charAt(0)) > -1;
}

isValidCommandChar("!help");    // true
isValidCommandChar("#help");    // false
isValidCommandChar("/help");    // true
isValidCommandChar(".help");    // true