quarta-feira, novembro 27, 2024
Home Programação Javascript Validação de E-mail em JavaScript

Validação de E-mail em JavaScript

Saiba aqui diferentes formas de validação de E-MAIL em JavaScript e como aplicá-las em seu código

Validação de E-mail em JavaScript é uma tarefa crucial para garantir a precisão e validade dos dados de contato em seus projetos. Com a crescente demanda por aplicativos e sistemas confiáveis, a validação de E-mail se tornou uma parte fundamental da construção de formulários e sistemas de registro. Descubra as melhores práticas e opções de validação de E-mail em JavaScript para garantir a qualidade e a eficiência de seus projetos.

function validarEmail(email) {
  let validacaoRegex =
    /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
  return validacaoRegex.test(email);
}

if (validarEmail('teste@teste.com.br')) {
  console.log("E-mail é válido");
} else {
  console.log("E-mail não é válido");
}

O regex utilizado acima irá validar a string do e-mail… basicamente ele verifica se o texto corresponde ao formato de um endereço de e-mail válido:

  • ^ início da string
  • (([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\")) parte do usuário e domínio antes do @.
    • [^<>()[\]\\.,;:\s@\"]+ corresponde a uma ou mais sequências de caracteres que não são “<“, “>”, “(“, “)”, “[“, “]”, “”, “.”, “,”, “;”, “:”, ” “, “@”, ou “
    • (\.[^<>()[\]\\.,;:\s@\"]+)* corresponde a zero ou mais ocorrências de “.” seguidas de uma ou mais sequências de caracteres que não são “<“, “>”, “(“, “)”, “[“, “]”, “”, “.”, “,”, “;”, “:”, ” “, “@”, ou “
    • \".+\" corresponde a uma string entre aspas duplas
  • @ corresponde ao caractere @
  • ((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,})) corresponde ao domínio do e-mail
    • \[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\] corresponde a um endereço IP (exemplo: [192.168.0.1])
    • ([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,} corresponde a um nome de domínio (exemplo: example.com)
  • $ fim da string

Este padrão de Validação de E-mail em JavaScript regulado é usado para verificar se um endereço de e-mail corresponde ao formato válido, mas não garante que o endereço de e-mail seja realmente válido.

 

function validarEmail(email) {
  const atpos = email.indexOf("@");
  const dotpos = email.lastIndexOf(".");
  if (atpos < 1 || dotpos < atpos + 2 || dotpos + 2 >= email.length) {
    return false;
  }
  return true;
}

if (validarEmail("teste@teste.com.br")) {
  console.log("E-mail é válido");
} else {
  console.log("E-mail não é válido");
}

Esta função de validação começa procurando a posição do caractere “@” no endereço de e-mail, armazenando o resultado em “atpos”. Em seguida, procura a posição do último ponto (“.”) no endereço de e-mail, armazenando o resultado em “dotpos”.

Em seguida, a função verifica se as seguintes condições são verdadeiras:

  • A posição do “@” é menor que 1
  • A posição do ponto é menor que a posição do “@” + 2
  • A posição do ponto + 2 é maior ou igual ao comprimento total do endereço de e-mail

Se qualquer uma dessas condições for verdadeira, a função retorna “false”. Caso contrário, a função retorna “true”.

 

function validarEmail(email) {
  const parts = email.split("@");
  if (parts.length !== 2) {
    return false;
  }
  const domainParts = parts[1].split(".");
  if (domainParts.length < 2) {
    return false;
  }
  return true;
}

if (validarEmail("teste@teste.com.br")) {
  console.log("E-mail é válido");
} else {
  console.log("E-mail não é válido");
}

A função acima começa dividindo o endereço de e-mail em duas partes ao longo do caractere “@”, armazenando o resultado em “parts”.

Em seguida, a função verifica se o comprimento do array “parts” é igual a 2. Se não for, a função retorna “false”, o que indica que o endereço de e-mail não tem o formato correto.

Se o comprimento do array “parts” for igual a 2, a função divide a segunda parte do endereço de e-mail ao longo do ponto, armazenando o resultado em “domainParts”.

Em seguida essa validação de e-mail em JavaScript verifica se o comprimento do array “domainParts” é menor que 2. Se for, a função retorna “false”, o que indica que o endereço de e-mail não tem o formato correto.

Se nenhuma das verificações acima retornar “false”, a função retorna “true”.

 

function validarEmail(email) {
  if (email.includes("@") && email.includes(".")) {
    return true;
  }
  return false;
}

if (validarEmail("teste@teste.com.br")) {
  console.log("E-mail é válido");
} else {
  console.log("E-mail não é válido");
}

Esta última função verifica se o endereço de e-mail contém tanto o caractere “@” quanto o ponto (“.”). Isso é feito usando o método “includes()”.

Se o endereço de e-mail contiver ambos os caracteres, a função retorna “true”, o que indica que o endereço de e-mail tem o formato básico correto. Caso contrário, a função retorna “false”.

Por fim…

Alguns exemplos de como fazer uma função “útils” para seu projeto, podendo assim enriquecer cada vez mais as validações dos seus formulários e trazendo mais confiabilidade nos seus dados.

DEIXE UMA RESPOSTA

Por favor entre com seu comentário
Por favor insira o seu nome aqui

Últimos artigos

Entenda o que é refatoração de código

Porque a refatoração de código é tão importante na programação Melhora a qualidade do código: A refatoração ajuda a melhorar a qualidade do código,...

O que são Padrões de Projeto de Software

O que são Padrões de Projeto de Software Design patterns, ou padrões de projeto de software, são soluções comprovadas e testadas para problemas comuns que...

Winston NodeJS Logger

O que são logs de uma aplicação? Basicamente são registros detalhados e estruturados dos eventos ocorridos em sua execução. Eles incluem informações sobre erros, operações...

Vantagens e Desvantagens no uso da API Date e Intl

Antes de mais nada, qual a importância de saber manipular datas na programação É importante saber manipular os objetos Date e Intl em JavaScript porque...

Entendendo biblioteca de requisições HTTP Axios

Primeiramente o que é AXIOS e sua finalidade Axios é uma biblioteca JavaScript que facilita a realização de requisições HTTP (como GET, POST, PUT, DELETE,...