Fala Nicola, tudo bem? Espero que sim!
Vamos lá,
1 - resolve
e reject
são parâmetros que iremos receber de quem for resolver essa promise que criamos (através do then e catch). Sendo resolve
uma função que será executada caso a promise for resolvida com sucesso, e reject
uma função a ser executada caso ocorra algum erro na promise, veja:
const promise = new Promise((resolve, reject) => {
if(5 === 5) {
resolve("É igual a 5 :D")
} else {
reject("Não é igual a 5 :(")
}
})
Na promise criada logo acima, verificamos se 5
é igual a 5
, caso for, irá resolver a promise e passar como parâmetro para a função resolve
o texto "É igual a 5 :D" e caso não for, irá rejeitar a promise e passar como parâmetro para a função reject
um erro contendo o texto "Não é igual a 5 :(", veja:
promise.then((response) => {
console.log(response) // "É igual a 5 :D"
}).catch((error) => {
console.log(error) // "Não é igual a 5 :("
})
No exemplo acima, percebebesse que passamos como parâmetro para o then
uma função, que é justamente a função que será executada caso a promise for resolvida com sucesso (seria aquele resolve
que recebemos no momento da criação da promise). E passamos como parâmetro para o catch
uma função a ser executada caso a promise falhar. E essas funções irão receber os seus devidos parâmetros.
2 - São parâmetros, e esses parâmetros são passados pelo then
e catch
.
3 - Funções.
4 - Como pode ver no tópico 1, esse retorno de valores são feitos através de parâmetros, onde executamos as funções de acordo se a promise for executada com sucesso ou não.
Você pode também dar uma olhada na documentação da Promise.
Caso continue confuso, pode falar ai pra gente, ta bom?
Abraços e bons estudos :D