记录下一些学习的代码。

自己分别在node中执行,和浏览器中执行!!!!,居然不一样

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
32
33

// 此时settimeout 延迟0s
console.log(1);

setTimeout(()=>{
console.log(2);

new Promise((resolve)=>{
console.log(4);
resolve();
}).then(()=>{
console.log(5);
});
},0);


new Promise((resolve)=>{
console.log(7);
resolve();
}).then(()=>{
console.log(8);
});

setTimeout(()=>{
console.log(9);

new Promise((resolve)=>{
console.log(11);
resolve();
}).then(()=>{
console.log(12);
})
},0);
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
32
33

// 此时settimeout 延迟1s
console.log(1);

setTimeout(()=>{
console.log(2);

new Promise((resolve)=>{
console.log(4);
resolve();
}).then(()=>{
console.log(5);
});
},1);


new Promise((resolve)=>{
console.log(7);
resolve();
}).then(()=>{
console.log(8);
});

setTimeout(()=>{
console.log(9);

new Promise((resolve)=>{
console.log(11);
resolve();
}).then(()=>{
console.log(12);
})
},1);

这个时候,浏览器和node执行结果才会一致