实现 LazyMan

# 实现 LazyMan

LazyMan('Hank');
// 输出:
// Hi! This is Hank!

LazyMan('Hank').sleep(3).eat('dinner')
// 输出:
// Hi! This is Hank!
// //等待3秒..
// Wake up after 3
// Eat dinner~

LazyMan('Hank').eat('dinner').eat('supper')
// 输出:
// Hi This is Hank!
// Eat dinner~
// Eat supper~

LazyMan('Hank').sleepFirst(2).eat('dinner').sleep(3).eat('supper')
// 输出:
// //等待2秒..
// Wake up after 2
// Hi This is Hank!
// Eat dinner~
// //等待3秒..
// Wake up after 2
// Eat supper~

// 以此类推
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
class LazyMan {
 constructor(name) {
  this.name = name;
  setTimeout(() => {
   console.log('Hi! This is ' + name);
  }, 0);
 }

 sleep(seconds) {
  const delay = seconds * 1000;
  setTimeout(() => {
   console.log('Wake up after' + seconds);
  }, delay);
  return this;
 }

 eat(something) {
  setTimeout(() => {
   console.log('Eat' + something);
  }, 0);
  return this;
 }

 sleepFirst(seconds) {
  const delay = seconds * 1000;
  setTimeout(() => {
   console.log('Wake up after' + seconds);
  }, delay);
  return this;
 }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
上次更新: 2022/7/26 下午6:03:32