使用jQuery随机'电子邮件格式'文本

时间:2013-11-16 01:18:48

标签: javascript jquery html random

我想知道如何在jQuery中获得一个随机文本变量,如下所示:

gwtq3tw3232dsk@domain.com

第一部分中字母和数字的15位数随机组合和第二部分中的“@ domain.com”保持不变。

我想获得一直不同的真实随机条目。

如何使用javascript或jquery执行此操作?

由于

4 个答案:

答案 0 :(得分:6)

使用chancejs github

电子邮件

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

返回包含随机域的随机电子邮件。

chance.email()
=> 'kawip@piklojzob.gov'

(可选)指定域名,电子邮件将是随机的,但域名不会。

chance.email({domain: 'example.com')
=> 'giigjom@example.com'

<小时/> 或纯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());

答案 1 :(得分:3)

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

这将随机选择要添加到电子邮件字符串的字符。

请注意,此可能,一旦在蓝色的月亮中,就会生成重复项。为了完全消除重复项,您必须存储所有生成的字符串并检查以确保您生成的字符串是唯一的。

JSFiddle Demo

答案 2 :(得分:2)

使用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);

答案 3 :(得分:1)

让我们用toSting来生成字母数字字符串

return Math.random().toString(36).substring(2,11) + '@domain.com';

尽可能短

如果你想让第一个字母成为一个字母,它可以与从字符列表中选择第一个字符组合

var chars = 'abcdefghijklmnopqrstuvwxyz';
return chars[Math.floor(Math.random()*26)] + Math.random().toString(36).substring(2,11) + '@domain.com';