let sleep = function(num){
return new Promise((resolve,reject) => {
setTimeout(() => {
resolve()
},num)
})
}
sleep(2000).then(() => {
console.log('执行')
})
let sleep2 = function* (num){
yield new Promise((resolve,reject) => {
setTimeout(() => {
resolve()
},num)
})
}
sleep2(2000).next().value.then(() => {
console.log('generator 实现')
})
let sleep3 = function(cb,time){
setTimeout(() => {
cb && cb()
},time)
}
sleep3(function(){
console.log('es5实现方式')
},2000)