Javascript 以32为基数生成一个随机的六位数字符串?
正如标题所说:我想用JavaScript在Crockford中生成一个随机的六位数字符串 我目前使用以下方法生成一个随机的六位数:Javascript 以32为基数生成一个随机的六位数字符串?,javascript,Javascript,正如标题所说:我想用JavaScript在Crockford中生成一个随机的六位数字符串 我目前使用以下方法生成一个随机的六位数: function genRandNum() { return Math.floor(Math.random() * 900000) + 100000; } 但是32号基地会更酷 除了从一个字符数组中随机选取六次来构建一个字符串之外,还有谁能推荐一种有效的方法来实现这一点吗?Number。toString(32)将返回数字的32位表示形式。这不是Crockf
function genRandNum() {
return Math.floor(Math.random() * 900000) + 100000;
}
但是32号基地会更酷
除了从一个字符数组中随机选取六次来构建一个字符串之外,还有谁能推荐一种有效的方法来实现这一点吗?Number。toString(32)
将返回数字的32位表示形式。这不是Crockford的32位表示法(它使用0123456789abcdefghijklmonpqrstuv
而不是Crockford的0123456789abcdefghjkmnpqrstvwxyz
),但它可以很容易地更改,因为数字是随机的:
var key = {
'i': 'w',
'l': 'x',
'o': 'y',
'u': 'z'
};
var randomInt = Math.floor(Math.random()*1e9);
alert(randomInt.toString(32).replace(/[ilou]/, function (a) {
return key[a];
}));
您是否确实尝试过使用Crockford的
base 32
方法生成getRandStr()
函数?没有-没有!我不想偷懒,只是想得到最好的方法的建议:)@Javed如果你认为这是最好的方法,那么我会写下来,并把它作为一个答案发布——让我知道。