0

嗨,我是编码新手,我试图让这个代码工作。我需要做的是确保用户输入的所有文本都包含我在数组中指定的所有字符,如果不是警报假,它是否警报真。如果你能提供帮助,我会很努力,那就太好了。

var userinput = prompt('Input characters:');

var lowercase = userinput.toLowerCase();

alert(lowercase);

var allowedcharacters = [abcdef];

if (lowercase == allowedcharacters){
  alert(true);
}
else{
  alert(false);
}
4

2 回答 2

0

您可以使用正则表达式:

if (/[^a-f]/i.test(input))
    // Waaah!
于 2013-11-06T22:36:23.900 回答
0

好的,根据您的评论,您需要这样的东西:

function checkWord(sInput, arAllowedWrds) {
    for (var i = 0; i < arAllowedWrds.length; i++) {
        if (sInput.indexOf(arAllowedWrds[i]) == -1) {
            return false;
        }
    }

    return true;
}

然后,您可以将此函数复制到您的代码中并像这样调用它:

if (checkWord(lowercase, allowedcharacters)) {
    alert("True");
}
else {
    alert("False");
}

如果他们解决了您的问题,请将答案标记为正确,以便线程关闭。

干杯,
弗洛里安

PS:
您的声明var allowedcharacters = [abcded]实际上是不正确的。如果你想要一个包含多个字符的数组,你必须写= ["a", "b", "c", "d", "e", "f"]

于 2013-11-06T22:55:04.780 回答