setTimeout函数是异步操作,例如:
console.log(1) setTimeout(function(){ console.log(2) },5000) console.log(3)
会先执行 1-3-2
下面编写的sleep 函数,是同步的,执行完延时阻塞之后,才执行下面的代码:
console.log(1); function sleep(milliSeconds) { var startTime = new Date().getTime(); while (new Date().getTime() < startTime + milliSeconds); } sleep(5000); console.log(3);
会执行1-3