Guest User

Untitled

a guest
Jan 22nd, 2019
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.44 KB | None | 0 0
  1. const Chain = f => ({
  2. f,
  3. write: v => {
  4. f(() => console.log(v))
  5. return Chain(f)
  6. },
  7. wait: ms => Chain(next => setTimeout(() => f(next), ms))
  8. })
  9. let obj = Chain(next => next())
  10.  
  11. // test case:
  12. // obj.write(4)
  13. // obj.wait(1000)
  14. // obj.write(4).write(3).write(2)
  15. // obj.wait(1000).wait(2000).write(4)
  16. // obj.wait(1000).write(1).wait(2000).write(2)
  17. // obj.write(1).wait(1000).write(2)
  18. // obj.wait(3000).write(1).write(2).wait(1000).write(3)
Add Comment
Please, Sign In to add comment