Разве обещания не являются просто обратными вызовами?

Я разрабатывал JavaScript в течение нескольких лет, и я совсем не понимаю суеты по поводу обещаний.

Кажется, что все, что я делаю, это изменения:

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

Который я мог бы использовать библиотеку, какасинхронной во всяком случае, с чем-то вроде:

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

Который более кодовый и менее читаемый. Я ничего не получил здесь, это не внезапно волшебно "плоский" также. Не говоря уже о необходимости превращать вещи в обещания.

Так в чем же суть обещаний?

Ответы на вопрос(8)

Ваш ответ на вопрос