2012-10-07 99 views
2

如何从用户处输入文本(他们的键盘允许他们输入的任何东西),然后将其传输到数字中?对种子随机输入的文本输入

从那里,我可能会拿这个数字,并喂它到一个种子随机数发生器。

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

+0

我不确定如何在javascript中执行此操作,但是当与键盘进行交互时,您将获得的是关键代码。这些将是整数。还有其他的东西是随机的,就像击键和鼠标移动之间的时间间隔一样。 – CrazyCasta

回答

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()功能,它始终只是使用了种子的当前日期。

+0

*我的部分是什么?你会忽略第一个字符。你是否想要做* Math.pow(2,3 * i)之类的东西? – CrazyCasta

+0

我并不是想成为那样的人,尽管那样也会起作用。只是想为角色添加一个基本的权重。我将它固定在上面,这样我就不会跳过第一个字符。 – Bill

+0

你只是让我意识到我很容易忽视那种方法o.o – Tgwizman