【发布时间】:2018-12-15 15:28:18
【问题描述】:
【问题讨论】:
标签: javascript
【问题讨论】:
标签: javascript
这是很简单的事情。 Promise 适用于异步操作。可以以 Q.js 和 Promise.js 为例。
【讨论】:
引用 MDN:
Promise 是在创建 Promise 时不一定知道的值的代理。它允许您将处理程序与异步操作的最终成功值或失败原因相关联。 这让异步方法可以像同步方法一样返回值:异步方法不会立即返回最终值,而是返回一个承诺,以便在未来某个时间点提供该值。
本质上,promise 是一个返回的对象,您可以将回调附加到该对象,而不是将回调传递给函数。
基本上,如果您有一些同步代码(例如alert()),并且您需要使用异步函数(例如setTimeout()),您可以使用promise(如第一个示例所示)。
示例如下:
var promise1 = new Promise(function(resolve, reject) {
setTimeout(resolve, 100, 'foo');
});
console.log(promise1);
// expected output: [object Promise]
用它来结合同步代码和异步代码。
【讨论】: