如何创建一个在 Javascript 中保持不变且不变的随机数?

How do I create a random number that remains constant and doesn't change in Javascript?

我正在尝试在屏幕上绘制几个圆圈,这些圆圈在初始化后不会移动。现在,它不断地将它们绘制到屏幕上,而不是将它们留在那里。这是代码:

for (let i = 0; i < 1; i++) {
    //location
    const r = random(100, 900);
    const r2 = random(900, 100);
    //size
    const rS = random(50, 250);
    const rS2 = random(250, 50);
    //draw the ellipse with parameters
    ellipse(r, r2, rS, rS2);
  }

(这是 p5.js 库)

听起来您的代码在 draw() 函数中,该函数每秒被调用多次。由于您每次都调用 random(),因此它每次都会创建新参数。相反,您应该将参数分配给其他地方的变量(例如在 setup 函数中),然后在 draw 函数中使用它们。类似于:

var ellipses = [];

function setup() {
  createCanvas(640, 480);
  for (let i = 0; i < 1; i++) {
    ellipses.push({
      r: random(100, 300),
      r2: random(300, 100),
      rS: random(50, 250),
      rS2: random(250, 50)
    });
  }  
}

function draw() {
  clear();
  //location
  //draw the ellipse with parameters
  ellipses.forEach(function (e) {
    ellipse(e.r, e.r2, e.rS, e.rS2);
  })
}
<script src="https://unpkg.com/p5@1.1.9/lib/p5.min.js"></script>