Использование random в JSP5 - PullRequest
       5

Использование random в JSP5

0 голосов
/ 31 марта 2020

Кто-нибудь знает, как я могу решить эту проблему?

var Arguments [2003,1002,3932,10203,2030,1828912,12912]
var Argument = Arguments[Math.floor(Math.random() * Arguments.length)] 

Из-за этих переменных случайный аргумент всегда выбирается в начале. Однако, если вы находитесь в программе и переключаетесь со страницы на страницу, она сохранит случайное значение, которое было в начале. Я хочу, чтобы он постоянно создавал новые значения.

В функции рисования я вызываю аргумент так:

text(Argument, 300,180);

Ответы [ 4 ]

1 голос
/ 31 марта 2020

Если я правильно понимаю ваш вопрос и комментарии, вам нужно повторно присвоить Argument, чтобы оно было другим случайным значением при каждом переключении страниц, например, в этой строке при каждом переключении:

Argument = Arguments[Math.floor(Math.random() * Arguments.length)];

Вы не помещаете var туда каждый раз. Присвойте ему значение в setup(), затем переназначьте его, когда вам понадобится другое значение.

Если, конечно, я полностью пропустил вашу проблему.

0 голосов
/ 09 апреля 2020

Если вы сделаете случайный выбор в setup (), это произойдет только один раз в вашем сценарии. Кроме того, не выбирайте имена переменных, которые могут уже использоваться системой (я подозреваю, что «аргументы» могут быть.

let args = [2003,1002,3932,10203,2030,1828912,12912];
let a;

function setup() {
  createCanvas(400, 400);
  a = random(args);
}

function draw() {
  background(220);

  textSize(30);
  text(a,50,70);
}

function mousePressed() {
  a = random(args);
}
0 голосов
/ 08 апреля 2020

Сделать аргумент в функции.

var Arguments [2003,1002,3932,10203,2030,1828912,12912];

var Argument = function(){
    return Arguments[ Math.floor( Math.random() * Arguments.length ) ];
}

text(Argument(), 300,180);
0 голосов
/ 31 марта 2020

В p5.js есть полезная функция, которая называется random

, чтобы вы могли использовать ее вот так

var Arguments [2003,1002,3932,10203,2030,1828912,12912]
var Argument = Arguments[random(0, Arguments.length - 1)] 

вы можете прочитать об этом подробнее здесь

...