Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / как работает Deffered? / 2 сообщений из 2, страница 1 из 1
30.10.2014, 01:14
    #38791272
redwhite90
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как работает Deffered?
Есть такой код:
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
var index, promise, promises_ary, _i;

rand = function(min, max) {
  return Math.floor(Math.random() * (max - min + 1) + min);
};

promises_ary = [];

for (index = _i = 0; _i < 10; index = ++_i) {
  promise = (function(index) {
    var dfd;
    dfd = new $.Deferred();
    
    setTimeout(function() {
      alert(index);
      return dfd.resolve();
    }, rand(1, 5) * 1000);

    return dfd.promise();
  })(index);

  promises_ary.push(promise);
}

$.when.apply($, promises_ary).done(function() {
  return alert('Promises Ary is Done');
})




Объясните пожалуйста почему Promises Ary is Done выводлится последним - никак не могу понять как эта штука работает.
...
Рейтинг: 0 / 0
30.10.2014, 08:46
    #38791375
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как работает Deffered?
redwhite90, потому как Вы сами написали выводить сообщение тогда, когда цепочка будет done.

P.S.: исходники jQuery открыты.
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / как работает Deffered? / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]