JS定时任务随机时长Sleep方法

比如在一些模拟点击刷单等人工操作中,为了防止系统检测机制发现,有时候需要进行随机时长的定时操作。如何实现?,其实挺简单的,代码如下:

function sleep(time) {
    return new Promise((resolve)=>setTimeout(resolve, time));
}

async function run() {
    let i = 0;
    let iMax=10000;
    let iMin=30;
    while (i < 10) {
        let sleepTime = Math.floor(Math.random() * iMax) + iMin;
        console.log(sleepTime);
        await sleep(sleepTime);        
        let time = new Date()
        console.log('本次Sleep: ' + sleepTime + ' ms 时间:'+time.toLocaleString());        
        i++;
    };

};

run();

//await async 用于控制 setTimeout 同步执行。模拟JS随机点击

执行效果如下图:

随机时长将会在30--10000ms之间出现。将要模拟执行的操作放在while循环中即可。此处设置了只执行十次。

JS定时任务随机时长Sleep方法_第1张图片

 

你可能感兴趣的:(JavaScript,javascript,前端,模拟,定时操作,时长)