emailaddress
Represents email addresses as objects. Parses an address from a string and validates the format. Can also parse multiple addresses from a string or array of strings.
Usage
Example 1
const EmailAddress = require('emailaddress'); let emailAddress = new EmailAddress('Somebody somebody@example.com');
emailAddress.valueOf();
'somebody@example.com'
emailAddress.toString();
'Somebody somebody@example.com'
emailAddress.toJSON();
{ address: 'somebody@example.com', domain: 'example.com', local: 'somebody', name: 'Somebody', original: 'Somebody somebody@example.com' }
emailAddress.address;
'somebody@example.com'
emailAddress.domain;
'example.com'
emailAddress.local;
'somebody'
emailAddress.name;
'Somebody'
Example 2
const EmailAddress = require('emailaddress'); let emailAddress = new EmailAddress('n00b <@.>');
emailAddress.valueOf();
undefined
emailAddress.toString();
'n00b <@.>'
emailAddress.toJSON();
{ address: null, domain: null, local: null, name: null, original: 'n00b <@.>' }
emailAddress.address;
undefined
emailAddress.domain;
undefined
emailAddress.local;
undefined
emailAddress.name;
undefined
Example 3
const EmailAddress = require('emailaddress'); let emailAddress = new EmailAddress('nobody@example.com');
emailAddress.valueOf();
'nobody@example.com'
emailAddress.toString();
'nobody@example.com'
emailAddress.toJSON();
{ address: 'nobody@example.com', domain: 'example.com', local: 'nobody', name: null, original: 'nobody@example.com' }
emailAddress.address;
'nobody@example.com'
emailAddress.domain;
'example.com'
emailAddress.local;
'nobody'
emailAddress.name;
undefined
Example 4
const EmailAddress = require('emailaddress'); let to = 'Somebody somebody@example.com,n00b <@.>,nobody@example.com'; let emailAddresses = EmailAddress.parseEmailAddresses(to);
emailAddresses.length;
2
emailAddresses[0].toJSON();
{ address: 'somebody@example.com', domain: 'example.com', local: 'somebody', name: 'Somebody', original: 'Somebody somebody@example.com' }
emailAddresses[1].toJSON();
{ address: 'nobody@example.com', domain: 'example.com', local: 'nobody', name: null, original: 'nobody@example.com' }
Example 5
const EmailAddress = require('emailaddress'); let to = ['Somebody somebody@example.com','n00b <@.>','nobody@example.com']; let emailAddresses = EmailAddress.parseEmailAddresses(to);
emailAddresses.length;
2
emailAddresses[0].toJSON();
{ address: 'somebody@example.com', domain: 'example.com', local: 'somebody', name: 'Somebody', original: 'Somebody somebody@example.com' }
emailAddresses[1].toJSON();
{ address: 'nobody@example.com', domain: 'example.com', local: 'nobody', name: null, original: 'nobody@example.com' }
Example 6
const EmailAddress = require('emailaddress'); let to = ['Somebody somebody@example.com','n00b <@.>','nobody@example.com']; let emailAddresses = [...EmailAddress.emailAddresses(to)]
emailAddresses.length;
3
emailAddresses[0].toJSON();
{ address: 'somebody@example.com', domain: 'example.com', local: 'somebody', name: 'Somebody', original: 'Somebody somebody@example.com' }
emailAddresses[1].toJSON();
{ address: null, domain: null, local: null, name: null, original: 'n00b <@.>' }
emailAddresses[2].toJSON();
{ address: 'nobody@example.com', domain: 'example.com', local: 'nobody', name: null, original: 'nobody@example.com' }
Dependencies
- [email-addresses]
Requires Node 4 with harmony features or Traceur.
License
ISC