【发布时间】:2019-01-05 17:41:01
【问题描述】:
我是 JS 新手。 我刚去了MDN网站 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/then 围绕给出的示例进行操作。 我将示例更改为
var promise1 = new Promise(function(resolve, reject) {
resolve('Success!');
});
promise1
.then(value => console.log(value))
.then(console.log('1'))
.then(console.log('2'))
.then(console.log('3'))
.then(console.log('4'))
.then(console.log('5'));
我希望结果是成功!然后是 1,一直到 5。 但是,结果是1比5,然后成功! 我觉得有点奇怪。 我已经很好地链接了它,但没有“分支”它。非常感谢
【问题讨论】:
-
console.log('1'), ... 被调用,log的结果作为回调传递给then -
在
foo(bar())中,bar总是在之前foo执行。bar的返回值被传递给foo。 -
谢谢大家!我花了一些时间来思考你所说的,然后我意识到这是将 func() 作为参数传递和仅传递 func 之间的区别。以后遇到类似问题我会提醒自己的!再次感谢。很有帮助。
标签: javascript