阿神2017-07-05 10:54:30 0 1 445
var p3 = new Promise( (resolve, reject) => {
resolve('B')
})
var p1 = new Promise( (resolve, reject) => {
resolve(p3)
})
p2 = new Promise( (resolve, reject) => {
resolve('A')
})
p1.then(v => console.log(v))
p2.then(v => console.log(v))
node 与 浏览器运行不一致。 正常的理解 p1 内部 resolve 了一个 promise 不是同步的的 所以明显要p2晚一点。
阿神 2017-07-05 10:56:301楼
不管是输出 A B,还是输出 B A,都是对的。这就是异步。我们的所有操作都不能依赖于前置操作的返回顺序。
赞 +0添加回复