【问题标题】:i want to validate email address from javascript objects我想验证来自 javascript 对象的电子邮件地址
【发布时间】:2020-11-15 07:26:43
【问题描述】:

我正在尝试验证电子邮件地址,但此代码不起作用,请告诉我如何解决此问题。

function submitdata() {
    var email = document.getElementById('email');
    var password = document.getElementById('password');

    let user = localStorage.getItem('user');
    var userObj = [];

    for (var i = 0; i <= userObj.length; i++) {

        if (email.value === userObj[i].useremail) {
            alert("already registered")
        }
        else if (user === null) {
            var userObj = [];
        }
        else {
            userObj = JSON.parse(user);
            userObj.push({ useremail: email.value, userpw: password.value })
            localStorage.setItem("user", JSON.stringify(userObj));
            email.value = "";
            password.value = "";
        }
    }
}

【问题讨论】:

    标签: javascript html


    【解决方案1】:
    var userObj = [];
    

    看起来这就是问题所在。 userObj is 0的长度。

    if (email.value === userObj[i].useremail)

    这里的 userObj 是空的。第 0 个索引永远不会出现在第一位。

    我试图模拟同样的情况。你应该有类似这样的错误。

    let users = []
    
    console.log(users[0].email);
    VM329:1 Uncaught TypeError: Cannot read property 'email' of undefined
        at <anonymous>:1:10
    (anonymous) @ VM329:1
    

    仅当您的userObj 中有多个项目时才执行此循环

    【讨论】:

    • @Jahanzaib 如果对您有帮助,请接受答案!谢谢
    猜你喜欢
    • 2018-03-13
    • 2014-06-12
    • 1970-01-01
    • 2015-07-10
    • 2012-07-27
    • 1970-01-01
    • 1970-01-01
    • 2011-09-02
    • 2013-02-20
    相关资源
    最近更新 更多