Кнопка, имеющая шанс 1,04% перейти на страницу A и шанс 98,96% перейти на страницу B? - JavaScript - PullRequest
0 голосов
/ 08 мая 2020

Я пытаюсь создать кнопку, которая при нажатии имеет шанс 1,04% привести на страницу A и шанс 98,96% на страницу B. Это моя общая цель, но конкретный аспект c, который у меня есть Проблема заключается в рандомизации результатов. Я новичок в javascript, поэтому заранее прошу прощения. Любая помощь приветствуется.

- edit - Я включаю этот код в проект Wix, и вот полный код, который у меня есть на данный момент. Я начал с простых целых чисел 40/60, чтобы убедиться, что могу это сделать, но с меньшим процентом у меня проблемы с включением. Важно, чтобы у меня был десятичный процент 1,04, а не 1,00.

import wixLocation from 'wix-location';
let random = 0,counter40 = 0,counter60 = 0;

$w.onReady(function () {
 for (var i = 0; i < 10000000; i++) {
    random = Math.floor((Math.random() * 100) + 1);
    if (random <= 40)   {
        counter40++;
    } else {
        counter60++;
     }
  }
  console.log("counter40: " + counter40.toString());
  console.log("counter60: " + counter60.toString());
});

export function button1_click(event) {
    random = Math.floor((Math.random() * 100) + 1);
    if (random <= 40)   {
        wixLocation.to("/pageB");
    } else {
        wixLocation.to("/pageC");
   }
}

Ответы [ 3 ]

1 голос
/ 08 мая 2020

https://jsfiddle.net/ys84pu6a/1/

HTML:

<button id="randomRedirect">
  Press me
</button>

JS:

let button = document.getElementById('randomRedirect')
button.addEventListener('click', function() {
  let d = Math.random();
  if (d < 0.9896)
    window.location.href = "pageB.html";
  else
    window.location.href = "pageA.html";
}, false);
0 голосов
/ 08 мая 2020

Функция, которая предоставляет псевдослучайные значения: Math.random () .

Она возвращает число с плавающей запятой от 0 до 1.

Чтобы получить с вероятностью 1,04% вы можете просто сделать это:

let pageAChance = Math.random() <= 0.0104;
0 голосов
/ 08 мая 2020

Используйте функцию Math.random(). Он возвращает случайное число от 0 до 1. Вы можете использовать его так:

x = Math.random()
if(x < 0.0104){//1.04% chance
  window.location.href = [Page A]
}
else{
  window.location.href = [Page B]
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...