Random 'email format' text using jQuery

Use chancejs github

email

chance.email()
chance.email({domain: "example.com"}) 

Return a random email with a random domain.

chance.email()
=> '[email protected]'

Optionally specify a domain and the email will be random but the domain will not.

chance.email({domain: 'example.com')
=> '[email protected]'


Or pure JavaScript

fiddle DEMO

function makeEmail() {
    var strValues = "abcdefg12345";
    var strEmail = "";
    var strTmp;
    for (var i = 0; i < 10; i++) {
        strTmp = strValues.charAt(Math.round(strValues.length * Math.random()));
        strEmail = strEmail + strTmp;
    }
    strTmp = "";
    strEmail = strEmail + "@";
    for (var j = 0; j < 8; j++) {
        strTmp = strValues.charAt(Math.round(strValues.length * Math.random()));
        strEmail = strEmail + strTmp;
    }
    strEmail = strEmail + ".com"
    return strEmail;
}
console.log(makeEmail());

var chars = 'abcdefghijklmnopqrstuvwxyz1234567890';
var string = '';
for(var ii=0; ii<15; ii++){
    string += chars[Math.floor(Math.random() * chars.length)];
}
alert(string + '@domain.com');

This will randomly pick characters to add to the email string.

Note that this might, once in a blue moon, generate duplicates. In order to completely eliminate duplicates, you would have to store all generated strings and check to make sure that the one you are generating is unique.

JSFiddle Demo.


Using the answers from generate a string of 5 random characters

function getRandomEmail(domain,length)
{
    var text = "";
    var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";

    for( var i=0; i < length; i++ )
        text += possible.charAt(Math.floor(Math.random() * possible.length));

    return text + domain;
}

var email = getRandomEmail("@domain.com",15);