Promise的解析/拒绝功能的返回值

Mic*_*cki 6 javascript return-value promise

考虑这种情况.

new Promise(function(resolve, reject) {
    var x = resolve(2);
});
Run Code Online (Sandbox Code Playgroud)

什么价值x?我试图打印它,它告诉我undefined.它很直观,但总是如此吗?是在文档中吗?

第二个问题

new Promise(function(resolve, reject) {
    resolve(2);
    return 5;
});
Run Code Online (Sandbox Code Playgroud)

我们应该从我们投入承诺的函数中返回什么?这个值被忽略了吗?

Ben*_*aum 5

promise构造函数的返回值将被忽略

resolve函数还返回undefined

这是在promise构造函数规范中首先指定的,后来在ES2015(ES6)语言规范中指定了