javascript可以生成随机数种子吗

我在做个游戏,前端是javascript,后端是php
战斗开始的时候php发送所有数据到前端,并生成一个随机数种子
然后所有的数据全由javascript来计算,直到战斗结束才上传数据到php验算防作弊
但是伤害判定中要用到很多随机数,如果没有种子,php在验算的时候和js的随机数不一样。
js到底有没有随机数种子啊,如果没有的话,有没有什么算法能模拟出php按种子随机数的原理呢

3个回答

php种子随机数的原理
官方文档说的很清楚
http://php.net/manual/zh/function.srand.php
可以看出是根据时间产生的。
因此因为时间你不知道,知道原理也得不到种子。
不过如果得到种子,理论上来说,你可以得到随机数序列。
PHP应该用的是线性同余法产生的随机数。
http://zh.wikipedia.org/wiki/%E7%B7%9A%E6%80%A7%E5%90%8C%E9%A4%98%E6%96%B9%E6%B3%95

cattingbear
cattingbear 谢谢,如果确定是线性同余的话就可以自己写JS的随机方法了
5 年多之前 回复

js没有你说的什么种子。。可以随机到指定范围的数字

 <script type="text/javascript">
function rnd(min,max){
  var tmp=min;
  if(max<min){min=max;max=tmp;}
  return Math.floor(Math.random()*(max-min+1)+min);
}
alert(rnd(1,10))
alert(rnd(10,20))
</script>
cattingbear
cattingbear 确定没有种子的方法,那自己写就不亏了,就怕自己吭哧吭哧写完了发现有个函数一调用就好了
5 年多之前 回复
cattingbear
cattingbear 确定没有种子的方法,那自己写就不亏了,就怕自己吭哧吭哧写完了发现有个函数一调用就好了
5 年多之前 回复

获取当前时间做随机种子

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐