gpt4 book ai didi

javascript - 什么时候或谁将 resolve 和 reject 函数传递给 JS promise?

转载 作者:数据小太阳 更新时间:2023-10-29 06:15:03 25 4
gpt4 key购买 nike

我已经开始学习 javascript promises。但我就是无法理解 promise 的概念。最让我困扰的是谁将 Resolver 和 Reject 函数传递给 promise 构造函数?

请看这个 Promise 的例子:

function getImage(url){
return new Promise(function(resolve, reject){
var img = new Image()
img.onload = function(){
resolve(url)
}
img.onerror = function(){
reject(url)
}
img.src = url
})
}

现在谁确实传递了 resolve 和 reject 方法,正如我对 javascript 的理解告诉我的那样,由于未定义 resolve 和 rejects,该脚本将抛出未知变量错误?

getImage('doggy.jpg').then(function(successurl){
document.getElementById('doggyplayground').innerHTML = '<img src="' + successurl + '" />'
}).catch(function(errorurl){
console.log('Error loading ' + errorurl)
})

现在您看到了与上面类似的方法,传递这些方法(resolve 和 reject)的唯一方法是通过 then 和 catch,如上面对 getImage 的方法调用中所使用的。

最佳答案

The thing that bothers me most is who is passing the Resolver and Reject function to a promise constructor ?

没有人。

函数由 promise 构造函数传递。

它们被传递给您作为第一个参数传递给 promise 构造函数的函数。

关于javascript - 什么时候或谁将 resolve 和 reject 函数传递给 JS promise?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40046657/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com