Estoy confundido con los conceptos de Promise , Resolve , Reject y then catch .
Si bien sé cómo escribir código que funcione, quiero aclarar algunas preguntas:
Pregunta 1: Con respecto a Resolve , Reject , then , catch , ¿se presentan todos estos métodos junto con Promise ? Antes de que Promise se introduzca en Javascript, ¿Javascript ya tiene estos métodos especiales?
Pregunta 2: ¿Son arbitrarios los nombres de los métodos resolve, reject que se pasan como parámetros a las funciones ejecutoras en Promise? Por ejemplo:
const executorFunction = (resolve, reject) => { if ('1' === '1') { resolve('I resolved!'); } else { reject('I rejected!'); } } const myFirstPromise = new Promise(executorFunction); Este código anterior funciona bien, no hay error de sintaxis ni nada. La promesa estará en estado cumplido con 'I resolved!' valor. Pero si lo hago:
const executorFunction = (A, B) => { if ('1' === '1') { A('I resolved!'); } else { B('I rejected!'); } } const myFirstPromise = new Promise(executorFunction); ¿Seguiría funcionando? ¿Seguirá estando la promesa en estado cumplido con 'I resolved!' ¿valor?
Y para continuar, si cambio los nombres de los métodos:
const executorFunction = (reject, resolve) => { if ('1' === '1') { reject('I resolved!'); } else { resolve('I rejected!'); } } const myFirstPromise = new Promise(executorFunction); Ahora, ¿funcionaría esto? ¿Seguirá estando la promesa en estado cumplido con 'I resolved!' ¿valor?