Wie konvertiere ich eine vorhandene Callback-API in Versprechen?

Ich möchte mit Versprechungen arbeiten, habe aber eine Rückruf-API in einem Format wie:

1. DOM laden oder anderes einmaliges Ereignis:
window.onload; // set to callback
...
window.onload = function() {

};
2. Einfacher Rückruf:
function request(onChangeHandler) {
    ...
}
request(function() {
    // change happened
    ...
});
3. Node-Style-Callback ("Nodeback"):
function getStuff(dat, callback) {
    ...
}
getStuff("dataParam", function(err, data) {
    ...
})
4. Eine ganze Bibliothek mit Callbacks im Node-Stil:
API;
API.one(function(err, data) {
    API.two(function(err, data2) {
        API.three(function(err, data3) {
            ...
        });
    });
});
Wie arbeite ich mit der API in Versprechungen, wie "verspreche" ich es?

Antworten auf die Frage(17)

Ihre Antwort auf die Frage