我正在尝试为轮盘赌系统编写一个脚本,我希望脚本能够运行直到 bank 变量达到0或11,000,并在每次旋转后产生三个数据。
为了简单起见,我已将部分代码留下了。 if else语句中的代码不是问题。运行脚本直到变量达到某一点是我被困住的地方。
有人能帮我改写这个脚本吗?提前谢谢。
(function() {
var bank = 10000;
var bet = 1;
function spin() {
var number = Math.floor(Math.random() * 36);
if ( number == 0 ) {
document.write("<p>The number " + number + " is neither high nor low.</p>");
// removed
}
else if ( number > 18 ) {
document.write("<p>The number " + number + " is a high number.</p>");
// removed
}
else {
document.write("<p>The number " + number + " is a low number.</p>");
// removed
}
};
spin();
document.write("<p>Total bank is now " + bank + ".</p>");
document.write("<p>The next bet is " + bet + ".</p>");
})();
答案 0 :(得分:0)
如果您在页面中调用此循环(即您不希望页面在此期间挂断,或者想要显示结果),则应使用requestAnimationFrame:
window.requestAnimFrame = (function(){
return window.requestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
function( callback ){
window.setTimeout(callback, 1000 / 60);
};
})();
然后将您的循环设置为仅在银行处于您接受的范围内时自行调用:
function spinLoop() {
spin();
//perform your UI updates here
if (bank >= 0 && bank <= 11000) requestAnimFrame(spinLoop);
}
当然,您最初需要调用此函数来启动循环:
spinLoop();