Wie man eine E-Mail in JavaScript richtig validiert: Validierung mit regulären Ausdrücken und mehr
Hallo zusammen! Ich bin ein Anfänger in JavaScript und schreibe ein Registrierungsformular für mein erstes Projekt. Ich muss überprüfen, ob der Benutzer eine korrekte E-Mail eingegeben hat, bevor sie an den Server gesendet wird. Ich habe versucht, eine einfache Prüfung mit `includes('@')` zu schreiben, aber das ist offensichtlich nicht zuverlässig – der Benutzer könnte "test@test" oder "123@@@" eingeben. Könnt ihr mir sagen, wie man E-Mails richtig validiert?
Hier ist, was ich versucht habe:
```javascript
function validateEmail(email) {
if (email.includes('@') && email.includes('.')) {
return true;
}
return false;
}
console.log(validateEmail('test@test')); // true – aber das ist keine gültige E-Mail
console.log(validateEmail('@.com')); // true – auch Unsinn
```
Ich habe gehört, dass man reguläre Ausdrücke (RegExp) verwenden sollte, aber die sind für mich ein Buch mit sieben Siegeln. Bitte erklärt mir einfach: Wie schreibe ich einen korrekten regex für E-Mails, welche Zeichen sind erlaubt, und was mache ich mit Top-Level-Domains (TLD) wie .museum oder .travel? Muss ich die E-Mail auf dem Server überprüfen, wenn ich