首页 > 其他 > 详细

lazyMan

时间:2021-05-11 17:50:45      阅读:16      评论:0      收藏:0      [点我收藏+]
LazyMan=(name)=>{    // LazyMan(‘Frank‘).sleepFirst(5).eat(‘supper‘)
  var queue=[]
  const task=()=>{console.log(`你好,我是${name}`);next()}
  queue.push(task)
  const next=()=>{const first=queue.shift();first?.()}
  var api={
    _x:queue,
    sleep(n){
      const task=()=>{
        setTimeout(()=>{console.log(`我醒了,我刚睡了${n}秒`);next()},n*1000)
      }
      queue.push(task)
      return api
    },
    eat(type){
      const task=()=>{console.log(type===‘lunch‘?‘吃午餐‘:‘吃晚餐‘);next()}
      queue.push(task)
      return api
    },
    sleepFirst(n){
      const task=()=>{
        setTimeout(()=>{console.log(`我醒了,我刚睡了${n}秒`);next()},n*1000)
      }
      queue.unshift(task)
      return api
    }
  }
  setTimeout(()=>{next()})
  return api
}
LazyMan(‘Frank‘).sleepFirst(5).eat(‘supper‘)

lazyMan

原文:https://www.cnblogs.com/lceihen/p/14754174.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!