← All tutorials

GoCareerGo Tutorials

JavaScript Tutorial

Variables to closures, promises, the DOM and OOP — a complete JS reference.

Promise Basics

A Promise is an object representing the eventual completion (or failure) of an asynchronous operation.

const promise = new Promise((resolve, reject) => {
  setTimeout(() => {
    const success = true;
    success ? resolve('Done!') : reject('Failed');
  }, 1000);
});

promise
  .then(result => console.log(result))
  .catch(error => console.error(error));
  • A promise is always in one of three states: pending, fulfilled or rejected
  • Once settled (fulfilled/rejected), a promise's outcome never changes
  • .then() registers success handlers; .catch() registers error handlers
  • .finally() runs regardless of outcome — great for cleanup