在javascript中生成随机整数的最快方法是什么?

前端之家收集整理的这篇文章主要介绍了在javascript中生成随机整数的最快方法是什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
通常这是你如何在 javascript中获得一个随机数字.
Math.random();

然而,当涉及到生成随机整数时,这种方法似乎效率不高.

首先,随机函数必须生成一个随机的十进制,如0.1036098338663578,那么它必须乘以适当的范围(10.464593220502138).最后,floor函数减去小数来产生结果(在这种情况下为10).

var random_integer = Math.floor(Math.random()*101);

有没有更快的方式来生成JavaScript中的随机整数?

EDIT1:

我正在使用它来创建一个画布HTML5游戏. FPS约为50,除了产生随机数之外,我的代码是相当优化的.

解决方法

代码更快…键入.
var random_integer = Math.random()*101|0;

尽管如此,它将无法正常工作.

(它不会运行得更快,至少不能在chrome中运行.)

但是,如果您预先生成随机数,则可以在游戏过程中实现更快的速度.

for (var i=1e6,lookupTable=[]; i--;) {
  lookupTable.push(Math.random()*101|0);
}
function lookup() {
  return ++i >= lookupTable.length ? lookupTable[i=0] : lookupTable[i];
}

查找将通过一个具有百万个随机整数的数组旋转.这是much faster调用随机和地板(当然,有一个“加载时间”罚款,从生成查找表).

原文链接:https://www.f2er.com/js/155463.html

猜你在找的JavaScript相关文章