感觉这样是不是只能在new的同时去调用eat sleep 如果第一步new 第二步在执行eat sleep 还是没法触发执行
来源:8-11 手写一个LazyMan,实现sleep机制
哈啰沃尔德
2022-04-20
如题
写回答
2回答
-
香饽饽0
2022-09-22
Lazyman { _name = _tasks = [] constructor(name) { ._name = name } fire() { ._next() } _next() { task = ._tasks.shift() (task) { task() } } eat() { task = () => { console.log() ._next() } ._tasks.push(task) } sleep(time) { task = () => { setTimeout(() => { console.log() ._next() }time) } ._tasks.push(task) } } lz = Lazyman().eat().eat().sleep().eat().eat().sleep() lz.eat().fire()
可以考虑手动触发
00 -
双越
2022-04-20
只要不是异步,应该都可以的。
00
相似问题