I want to know how I can get a random text variable in jQuery like this format:
[email protected]
15 digit random combination of letters and numbers in the first part and '@domain' in the second part which remains the same.
I want to get real random entries that are different all the time.
how to do this with javascript or jquery?
Thanks
I want to know how I can get a random text variable in jQuery like this format:
[email protected]
15 digit random combination of letters and numbers in the first part and '@domain.com' in the second part which remains the same.
I want to get real random entries that are different all the time.
how to do this with javascript or jquery?
Thanks
Share Improve this question asked Nov 16, 2013 at 1:18 Claudio DelgadoClaudio Delgado 2,3497 gold badges21 silver badges27 bronze badges5 Answers
Reset to default 10Use chancejs github
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);
Lets do the trick with toSting to generate alphanumeric string
return Math.random().toString(36).substring(2,11) + '@domain.com';
shortest as possible
If you like to have first character a letter, it could be combination with selection of the first character from the character list
var chars = 'abcdefghijklmnopqrstuvwxyz';
return chars[Math.floor(Math.random()*26)] + Math.random().toString(36).substring(2,11) + '@domain.com';
I think this is better, 1 line of code.
Math.random().toString(36).substring(2)+'@'+(Math.random() * 0xffff).toString(36);