javascript 使用jQuery的随机“电子邮件格式”文本

b1uwtaje  于 2023-05-12  发布在  Java
关注(0)|答案(5)|浏览(271)

我想知道如何在jQuery中获得如下格式的随机文本变量:
gwtq3tw3232dsk@domain.com
第一部分为字母和数字的15位随机组合,第二部分为“@domain.com”,保持不变。
我想得到真实的的随机条目,这些条目总是不同的。
如何使用javascript或jquery?
谢谢

cgfeq70w

cgfeq70w1#

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

a64a0gku2#

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

tgabmvqs

tgabmvqs3#

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

wsxa1bj14#

让我们使用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';
epfja78i

epfja78i5#

我觉得这样更好,只有一行代码。

Math.random().toString(36).substring(2)+'@'+(Math.random() * 0xffff).toString(36);

相关问题