Domanda di colloquio di IBM

Explain promises in javascript?