比如在一些模拟点击刷单等人工操作中,为了防止系统检测机制发现,有时候需要进行随机时长的定时操作。如何实现?,其实挺简单的,代码如下:
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循环中即可。此处设置了只执行十次。