Avatar ·

Cómo validar correctamente un email en JavaScript: validación con expresiones regulares y más

¡Hola a todos! Soy nuevo en JavaScript y estoy escribiendo un formulario de registro para mi primer proyecto. Necesito verificar que el usuario haya ingresado un email válido antes de enviarlo al servidor. Intenté escribir una validación simple usando `includes('@')`, pero claramente no es confiable — el usuario podría escribir "test@test" o "123@@@". ¿Podrían indicarme cómo validar un email correctamente? Esto es lo que intenté: ```javascript function validateEmail(email) { if (email.includes('@') && email.includes('.')) { return true; } return false; } console.log(validateEmail('test@test')); // true — pero esto no es un email válido console.log(validateEmail('@.com')); // true — también es incorrecto ``` He oído que se deben usar expresiones regulares (RegExp), pero para mí son un bosque oscuro. Por favor, explíquenme de manera sencilla: cómo escribir un regex correcto para email, qué caracteres están permitidos, y qué hacer con los dominios de nivel superior (TLD) como .museum o .travel. ¿Es necesario validar el email en el servidor si yo