函数返回true,但是如果/ else语句正在记录false结果。我知道哪里出错了?
function loginDetails(arrayCheck, value) {
for(i = 0; i < arrayCheck.length; i++){
if(arrayCheck[i] === value){
return true;
}
}
return false;
}
var username = [1,2,3,4,5,6,7,8,9,10];
document.write('Login Details: ', loginDetails(username, 9), '</p>');
if(loginDetails === true) {
document.write('Redirect ....Welcome !!</p>');
} else {
document.write('There seems to be an error please try again !!');
}
&#13;
答案 0 :(得分:1)
loginDetails
是一个功能。然后测试它是否是布尔值true
。有趣的是,它永远不会!
我认为你确实想要运行这个功能。您需要缓存结果,以便不运行两次:
function loginDetails(arrayCheck, value) {
for(i = 0; i < arrayCheck.length; i++){
if(arrayCheck[i] === value){
return true;
}
}
return false;
}
var username = [1,2,3,4,5,6,7,8,9,10];
var loggedIn = loginDetails(username, 9);
document.write('Login Details: ', loggedIn, '</p>');
if(loggedIn === true) {
document.write('Redirect ....Welcome !!</p>');
} else {
document.write('There seems to be an error please try again !!');
}
答案 1 :(得分:0)
if(loginDetails === true)
你是什么意思?这并没有将任何参数传递给loginDetails
函数
而是尝试if(loginDetails(username, 9) === true)
。希望这样做。
否则将loginDetails(username, 9)
存储在变量中并检查该变量是否为true
?
答案 2 :(得分:0)
loginDetails
是一个函数我想你要检查它的结果是否等于true。
function loginDetails(arrayCheck, value) {
for(i = 0; i < arrayCheck.length; i++){
if(arrayCheck[i] === value){
return true;
}
}
return false;
}
var username = [1,2,3,4,5,6,7,8,9,10];
var loginDetailsResult = loginDetails(username, 9);
document.write('Login Details: ',loginDetailsResult, '</p>');
if(loginDetailsResult === true) {
document.write('Redirect ....Welcome !!</p>');
} else {
document.write('There seems to be an error please try again !!');
}
&#13;
答案 3 :(得分:0)
您正在检查该函数的 引用 是否等于true,它将始终评估为false。函数和布尔值是不同的类型,因此比较严格相等将始终返回false。我已经更正了代码,因此调用了函数,并比较了函数的结果,而不是对函数的引用。
function loginDetails(arrayCheck, value) {
for(i = 0; i < arrayCheck.length; i++){
if(arrayCheck[i] === value){
return true;
}
}
return false;
}
var username = [1,2,3,4,5,6,7,8,9,10];
document.write('Login Details: ', loginDetails(username, 9), '</p>');
if(loginDetails(username, 9) === true) {
document.write('Redirect ....Welcome !!</p>');
} else {
document.write('There seems to be an error please try again !!');
}
&#13;