以下是纯函数吗?
function test(min,max) {
return Math.random() * (max - min) + min;
}
我的理解是纯函数遵循以下条件:
- 它返回从参数计算得出的值
- 除了计算返回值外,它不做任何其他工作
如果这个定义正确,那么我的函数是纯函数吗?还是我对定义纯函数的理解不正确?
test(a,b)
总是返回相同的对象Random(a,b)
(可以表示不同的具体数字)?如果保留Random
符号,则它在古典意义上是纯正的,如果您对其进行早期评估并输入数字,也许作为一种优化,该函数仍会保留一些“纯净性”。
Math.random()
了RNG的状态更改。