Promise.resolve vs resolve

后端 未结 2 863
傲寒
傲寒 2021-01-22 07:11

I have this code:

var promise1 = new Promise(function(resolve, reject) {
  setTimeout(() => {
         console.warn(\'Elo\');
         resolve(\'First response         


        
相关标签:
2条回答
  • 2021-01-22 07:51

    Another way to think about it is:

    Resolve === resolveCallback === first argument provided to your Promise callback Promise.resolve === a function to returns a new Promise

    These two are functional equivalents:

    `const foo = Promise.resolve('First response').then( /* ... */ );`
    
    `const bar = new Promise(function(resolveCallback, rejectCallback) {
        resolveCallback('First response');
      }).then( /* ... */ );`
    
    0 讨论(0)
  • 2021-01-22 07:52

    The new Promise constructor passes a specific function into your callback, which becomes your resolve parameter. That promise (the one you're constructing there with new Promise) can only be resolved by calling that specific resolve function.

    Promise.resolve simply creates a new "pre-resolved" promise. It does not resolve any existing promise (nor would it have any way of knowing which promise it's supposed to resolve).

    0 讨论(0)
提交回复
热议问题