闭包和时间戳实现发起多个异步请求永远返回最新结果

 1 let f = 0;
 2             function a() {
 3                 f = f+1;
 4                 // (function (flag) {
 5                 //     setTimeout(() => {
 6                 //         console.log(flag, f);
 7                 //         debugger
 8                 //         if (flag === f) {
 9                 //             console.log(flag)
10                 //         }
11                 //     }, 2000)
12                 // })(date);
13                 {
14                     let data = f
15                     setTimeout(() => {
16                         console.log(data, f);
17                         if (data === f) {
18                             console.log(data)
19                         }
20                     }, 2000);
21                 }
22                 
23             }
24             a();
25             a();
26             a();

 

posted @ 2019-12-15 11:04  悠悠洛  阅读(271)  评论(0编辑  收藏  举报