//Promiseconst sleep = time => {  return new Promise(resolve => setTimeout(resolve,time))}sleep(1000).then(()=>{  console.log('sleep')})//Generatorfunction* sleepGenerator(time) {  yield new Promise(function(resolve,reject){    setTimeout(resolve,time);  })}sleepGenerator(1000).next().value.then(()=>{  console.log('sleep')})//asyncfunction sleep(time) {  return new Promise(resolve => setTimeout(resolve,time))}async function output() {  let out = await sleep(1000);   console.log('sleep')  return out;}output();//ES5function sleep(callback,time) {  if(typeof callback === 'function')    setTimeout(callback,time)}function output(){  console.log('sleep');}sleep(output,1000);