function validate(email) { if (!email) return false; if(email.length>254) return false; var valid = tester.test(email); if(!valid) return false; // Further checking of some things regex can't handle var parts = email.split("@"); if(parts[0].length>64) return false; var domainParts = parts[1].split("."); if(domainParts.some(function(part) { return part.length>63; })) return false; return true; }
...
#### javascript
```javascript
var validator = require("email-validator");
validator.validate("test@email.com"); // true
validator.validate_async("test@email.com", function(err, isValidEmail) {
//Do something with isValidEmail
}); // true
```
...
function validate_async(email, callback) { var isValidEmail = false; try { isValidEmail = exporter.validate(email); callback(null, isValidEmail); } catch(err) { callback(err, isValidEmail) } }
...
```javascript
var validator = require("email-validator");
validator.validate("test@email.com"); // true
validator.validate_async("test@email.com", function(err, isValidEmail) {
//Do something with isValidEmail
}); // true
```
#### TypeScript
...