我不明白为什么这个代码仍然返回false,即使我在出现提示时输入abcdef,因为它应该返回true。
var userinput = prompt('Input characters:');
var lowercase = userinput.toLowerCase();
var allowedcharacters = ["a", "b", "c", "d", "e", "f"]
function match(input, statement) {
for (var i = 0; i < statement.length; i++) {
if (input.indexOf(statement[i]) == -1) {
return false;
}
}
return true;
}
if (lowercase == allowedcharacters){
alert(true);
}
else{
alert(false);
}
答案 0 :(得分:1)
这是完整的代码。这个是通过查看这个试图获得一个想法。欢呼!!!
答案 1 :(得分:0)
您没有呼叫match
功能。你可能想要:
if (match(lowercase, allowedcharacters)){
alert(true);
}
else{
alert(false);
}
编辑每个请求,如果没有字符与不允许的字符匹配,则match
的变体返回true
:
function noneMatch(input, disallowed) {
for (var i = 0; i < disallowed.length; i++) {
if (input.indexOf(statement[i]) >= 0) {
return false;
}
}
return true;
}
答案 2 :(得分:0)
您没有使用已构建的功能匹配
答案 3 :(得分:0)
var userinput = prompt('Input characters:');
var lowercase = userinput.toLowerCase();
var allowedcharacters = ["a", "b", "c", "d", "e", "f"]
if (match(lowercase,allowedcharacters)){
alert(true);
}
else{
alert(false);
}
//function to check
function match(input, statement) {
for (var i = 0; i < statement.length; i++) {
if (input.indexOf(statement[i]) == -1) {
return false;
}
}
return true;
}