JSFiddle - React, Tailwind, and code Playground
JavaScript
console.clear();
// рандомные числа
var a, b, c;
setInterval(function() {
a = Math.round(100 * Math.random())
b = Math.round(100 * Math.random())
c = Math.round(100 * Math.random())
console.log('randomizer a='+a+', b='+b+', c='+c);
}, 1000);
function runChecker(funcCheck, funcFail, delay, maxtime) {
var isDone = false;
var timer = setInterval(function(){
if (funcCheck()) {
clearInterval(timer)
console.log('bingo!, проверка ' + func.toString() + ' прекращена')
}
}, delay);
setTimeout(function(){
if (!isDone) {
clearInterval(timer)
funcFail()
}
}, maxtime);
}
// запускаем проверки
runChecker(function(){ return a > 80}, function(){alert('out of time1')}, 1000, 10000);
runChecker(function(){ return a > b }, function(){alert('out of time2')}, 1000, 10000);
runChecker(function(){ return b > c }, function(){alert('out of time3')}, 1000, 10000);