首页 > 解决方案 > 比较用户名+密码的两个数组

问题描述

我在 JavaScript 中有两个数组。一个包含用户名,一个包含密码。我想创建一个循环来检查用户输入的“approvedUsernames”数组中的用户名位置(i),并在“approvedPasswords”数组中获取相同的“i”值并选择该值找到了。然后比较两者。如果它们匹配,则成功登录,否则不成功

请查看现有数组和我已经在下面编写的代码

非常感谢任何帮助我希望这已经足够清楚了我很难措辞:)

詹姆士

编辑:我知道这是一种非常不安全的密码存储方式,它只是暂时测试登录算法。最终版本肯定会使用 PHP+SQL 数据库

数组:

approvedLogins = ['JamesLiverton', 'SamW']                 approvedPasswords = ['password', 'coding']

代码:

function login(){
var username = document.getElementById('usernameField').value
var password = document.getElementById('passwordField').value

for (i = 0; i < approvedLogins.length; i++) {
    if (username == approvedLogins[i].username && password == approvedPasswords[i].password) {
        alert('Login Sucessful')
        return
    }
    else {
        alert('Login Unsucessful')
        return
    }
}

}

标签: javascripthtmlarrays

解决方案


let approvedLogins = ['JamesLiverton', 'SamW']               
let approvedPasswords = ['password', 'coding']

function login(){
  var username = document.getElementById('usernameField').value
  var password = document.getElementById('passwordField').value

  let index = approvedLogins.indexOf(username)

  if (password === approvedPasswords[index]) {
    alert('Login Sucessful')
  } else {
    alert('Login Unsucessful')
  }
}
<input type="text" id="usernameField" placeholder="username" /><input type="text" id="passwordField" placeholder="password" />

<button onclick="login()">login</button>


推荐阅读