Использование jQuery.Deferred, чтобы избежать вложенных обратных вызовов setTimeout

setTimeout ->
  console.log 'foo'
  setTimeout ->
    console.log 'bar'
    setTimeout ->
      console.log 'baz'
    , 1000
  , 1000
, 1000

Можно ли добиться того же результата с jQuery.Deferred? Возможно, что-то вроде следующего:

someFunction()
.then(-> console.log 'foo')
.then(delay 1000)
.then(-> console.log 'bar')
.then(delay 1000)
.then(-> console.log 'baz')

Возможно яМ неправильно мыслить обещаниями легко написать:Сделайте A, затем, когда закончите, сделайте B, затем, когда закончите, сделайте C.

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

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