it is simply an object that may or may not return some value in the present and future timeline. I like to describe a promise as a kind of Karma:
"You do something, and consequently you will get something, now or in the future."
for example
function divide(dividendo, divisor) { return new Promise((resolve, reject) => { if (divisor === 0) { reject(new Error('No se puede dividir entre 0')); } else { resolve(dividendo/divisor); } }); } async function test() { // esperamos por la respuesta try { const result = await divide(5, 0); console.log(result); } catch (err) { console.error(err.message); } } test();