¿No son las promesas solo devoluciones de llamada?

He estado desarrollando JavaScript durante algunos años y no entiendo el alboroto sobre las promesas en absoluto.

Parece que todo lo que hago es cambiar:

api(function(result){
    api2(function(result2){
        api3(function(result3){
             // do work
        });
    });
});

Que podría usar una biblioteca comoasíncrono de todos modos, con algo como:

api().then(function(result){
     api2().then(function(result2){
          api3().then(function(result3){
               // do work
          });
     });
});

Que es más código y menos legible. No gané nada aquí, tampoco es mágicamente 'plano' de repente. Sin mencionar tener que convertir las cosas en promesas.

Entonces, ¿cuál es el gran alboroto por las promesas aquí?

Respuestas a la pregunta(8)

Su respuesta a la pregunta