javascript for loop dosn循环创建用户

时间:2014-09-24 14:46:27

标签: javascript arrays for-loop

好的,所以我正在注册并使用javascript和localstorage登录论坛。 "学校作业"我的问题是,当我创建多个用户并将它们存储在localstorage中时,我的for循环不会遍历它们,只有第一个。所以我只能用我创建的第一个用户访问论坛。

function login ()  {
    if (checklogin()) {
        boxAlert.style.display = "block";
        boxAlert.innerHTML = "Welcome" + "";
        wallPanel.style.display = "block";
    } else {
        boxAlertfail.style.display = "block";
        boxAlertfail.innerHTML = "Go away, fail";
    }
}

function checklogin (){
    for  (var i = 0; i < aUsers.length; i++){
        if (aUsers[i].email == inputLoginMail.value && aUsers[i].password == inputLoginPassword.value){
            return true;
        }else{
            return false;
        }
    }
}

2 个答案:

答案 0 :(得分:1)

怎么样:

function checklogin() {
    var validLogin = false;
    for (var i = 0; i < aUsers.length; i++) {
        if (aUsers[i].email == inputLoginMail.value 
            && aUsers[i].password == inputLoginPassword.value) {
            validLogin = true;
            break;
        }
    }
    return validLogin;
}

答案 1 :(得分:0)

哎哟!您在第一次尝试时返回false。最好的方法是设置变量,然后检查它。

function checklogin() {
        var z = 0;
        for (var i = 0; i < aUsers.length; i++) {
            if (aUsers[i].email == inputLoginMail.value && aUsers[i].password == inputLoginPassword.value) {
                z = 1;
                break;
            } else {
                z = 0;
            }

            if (z == 1) {
                // User logged in
            } else {
                // Fake user
            }
        }