Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

218
Visualizações
Sistema de inicio de sesión que verifica si el usuario ya tiene una cuenta. Si tienen uno, pueden iniciar sesión, si no lo tienen, deben intentarlo de nuevo.

Mi problema general es encontrar los valores de las variables ''loginEmail'' y ''loginPass'' dentro de mi ''arrayRegistros''. Solo se convierte en VERDADERO cuando escribo el correo electrónico y la contraseña que se incluyen manualmente, sin embargo, siempre termina convirtiéndose en FALSO cuando uso las variables. Intenté convertir las variables en cadenas, luego usé document.getElementById junto con algunas otras ideas, pero hasta ahora, ninguna de ellas completó el sistema de inicio de sesión que había planeado. La ayuda que necesito es cómo se puede encontrar el valor/objeto de una determinada variable, dentro de una determinada matriz.

iniciar sesión (registro) {

 this.arrayRegistros; var loginEmail = document.getElementById('userEmail'); var loginPass = document.getElementById('userPass'); var contaEmail = this.arrayRegistros.some((loginEmail) => { return loginEmail.emailRegistro.includes(loginEmail) }) var contaPass = this.arrayRegistros.some((loginPass) => { return loginPass.passRegistro.includes(loginPass) }) console.log(contaEmail) console.log(contaPass) }
about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

El primer problema es que está nombrando el parámetro en la función Array.prototype.some igual que la variable que desea verificar fuera del alcance del predicado.

En segundo lugar, suponiendo que this.arrayRegistros es una matriz con objetos con las claves emailRegistro y passRegistro que contienen cadenas, los elementos DOM NO PUEDEN coincidir con cadenas, pero un element.value sí.

Otra cosa que debe tener en cuenta es que include no es un operador de igualdad, 'a-very-strong-password'.includes('a'); devolverá true .

Y, por último, nunca debe validar el inicio de sesión y la contraseña en el navegador, porque el usuario puede editar el código JavaScript sobre la marcha e iniciar sesión sin ninguna credencial real.

Con eso en mente, creo que la solución sería algo así (ignorando el problema de validación del navegador):

 const $userField = document.getElementById('userEmail'); const $passField = document.getElementById('userPass'); const registros = [ { email: 'example@example.com', password: 'a-very-strong-password' }, ...anotherUsers ]; function login(registro) { const { value: user } = $userField; const { value: pass } = $passField; // You can use `Array.prototype.some` to just know if the specific user credentials exist, or use `Array.prototype.find` to know if exist AND grab the user, to further utilization const item = registros.find(item => item.email === user && item.password === pass); if (item) { // User found } else { // User not found } }
about 4 years ago · Juan Pablo Isaza Relatório

0

debe obtener valores de entradas como esta:

 const data = [ { user : 'jhon', password : 'asdf123' }, { user : 'bob', password : 'asdf124' } ] const userName = document.getElementById('userEmail').value; const passWord= document.getElementById('userPassword').value; const findUser = data.filter( item => item.user === userName && item.password === passWord); if(findUser.length > 0){ //user found }
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda