0

Math.random()有谁知道在可汗学院的编程环境中使用或random()在可汗学院的编程环境中是否更好(内存明智或更快) ?

以“随机”为例,我指的是任何数学库,真的。

谢谢!

4

2 回答 2

2

processing.js 在内部Math.random()用作其内部随机数生成器。除了取决于参数的一些额外的乘法步骤之外,它们基本上是相同的。

var internalRandomGenerator = function() { return Math.random(); };

p.random = function() {
    if(arguments.length === 0) {
        return internalRandomGenerator();
    }
    if(arguments.length === 1) {
        return internalRandomGenerator() * arguments[0];
    }
    var aMin = arguments[0], aMax = arguments[1];
    return internalRandomGenerator() * (aMax - aMin) + aMin;
};

源代码

于 2020-02-12T15:51:07.323 回答
0

通过 PC 上的数学计算,无论您使用哪种方式,都不会产生明显的差异。即使您正在生成数千甚至数百万个随机数,您的计算机也能够比眨眼更快地处理它。

如果速度和/或内存是一个主要问题,那么您可以尝试一些像这样的第三方库,但是请记住,如果内存(如项目大小而不是内存)是一个问题,那么最好不要添加太多额外的模块或库。

于 2020-02-12T15:18:00.867 回答