A Promise is an object that represents the result of an asynchronous function call. Promises are also called futures and deferreds in some communities. Basically Promises provides flow control for async functions.