130. 创建LazyMan()
分享给更多人
中等难度 -通过 / -执行
LazyMan
除了吃就是睡,很lazy。
LazyMan(name: string, logFn: (log: string) => void)
通过传入logFn
打印信息。
LazyMan('Jack', console.log)// Hi, I'm Jack.
可以eat(food: string)
LazyMan('Jack', console.log) .eat('banana') .eat('apple')// Hi, I'm Jack.// Eat banana.// Eat Apple.
可以sleep(time: number)
,单位是秒。
LazyMan('Jack', console.log) .eat('banana') .sleep(10) .eat('apple') .sleep(1)// Hi, I'm Jack.// Eat banana.// Wake up after 10 seconds.// Eat Apple.// Wake up after 1 second.
sleepFirst(time: number)
的话,无论顺序如何,最优先sleep。
LazyMan('Jack', console.log) .eat('banana') .sleepFirst(10) .eat('apple') .sleep(1)// Wake up after 10 seconds.// Hi, I'm Jack.// Eat banana// Eat apple// Wake up after 1 second.
请创建一个如此懒惰的LazyMan()
。