我想创建一个按钮,当按下时,有1.04%的机会进入A页,98.96%的机会进入B页,这是我的总体目标,但我遇到的具体问题是结果的随机化。我对javascript相当陌生,所以我提前道歉。任何帮助都是感激的。
--编辑--我正在把这段代码融入到一个Wix项目中,这是我到目前为止的全部代码。我从简单的整数4060开始,以确保我可以做到这一点,但较小的百分比,我有问题纳入。重要的是我有一个小数百分比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");
}
}
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);
使用 Math.random()
函数,它返回一个0和1之间的随机数。它返回一个0和1之间的随机数.你可以这样使用它。
x = Math.random()
if(x < 0.0104){//1.04% chance
window.location.href = [Page A]
}
else{
window.location.href = [Page B]
}
提供伪随机值的函数是 Math.random().
它返回一个介于0和1之间的浮点数。
要得到1.04%的机会,你可以简单地这样做。
let pageAChance = Math.random() <= 0.0104;