种子随机的文本输入

时间:2012-10-07 02:45:39

标签: javascript random theory seeding

如何从用户那里获取文字输入(键盘允许他们输入的内容),并将其传输到数字?

从那里,我可能会拿这个号码,然后把它喂给种子随机数发生器。

我从Minecraft的随机种子选项中得到了这个想法,但我找不到任何内容。

1 个答案:

答案 0 :(得分:4)

可能有更多有趣的算法,但这只是将字符转换为整数并将其乘以位置以加权它们(因此'abc'与'cba'不同)。你也可以使用某种哈希函数,但我认为这可能是矫枉过正的。     

var input = 'askljfhasjfh', num = 0;

for (var i = 0, len = input.length; i < len; ++i) {
  num += input.charCodeAt(i) * (i + 1);
}

console.log(num);

请记住,你不能在Javascript中播种Math.random()函数,它总是只使用种子的当前日期。