将整数拆分为随机数之和

Ily*_*huk 3 javascript math

假设我们有一个整数16.

是否有一个函数,它返回随机数组,组成它的总和

例如7 1 2 4 1 1或1 5 2 3 6

我想知道是否存在一些在JavaScript中执行此操作的优雅方法.

zvo*_*ona 5

不,没有现有功能,但例如:

var n = 16;
var a = [];
while (n > 0) {
  var s = Math.round(Math.random()*n);
  a.push(s);
  n -= s;
}
Run Code Online (Sandbox Code Playgroud)

a 包含数组.