задача:генераторы + обещает распараллеливание N число элементов
- Мы хотим сделать запросы N параллельно АЯКС для детей по элементу.
- По возвращении мы хотим обработать их в последовательном порядке (1 ... N)
- Мы не хотим ждать возврата всех обещаний, но мы хотим обработать их ЗАКАЗОМ, когда они вернутся.
Например:
Даже если 2,3,5 вернуться до 1, мы должны держаться на результаты 2,3,5, и после возвращения 1, обработает 1,2, 3, с тем (и ждут 4, чтобы вернуться до 5)
Инструменты: Q + ES6 генераторы
Создать массив N-1 с длиной заполнителей переменных
EG, когда N = 3:
let [N1,N2,N3] = yield [ Promise1, Promise2, Promise3 ]
//process items sequentially:
console.log(N1)
console.log(N2)
console.log(N3)
Однако заселение массива пустых переменных не похож на работу, конечно, потому что ссылка не знает, где найти Декларацию Var
for(var i = 0; i< 3; i++) {
res.push("some empty var")
}
Учитывая ограничение прилипания к предоставляемые инструменты, как мы можем распараллелить вызовы, но последовательно обрабатываем их доход?
Что 'AJAX1',' AJAX2' и т.д.? Они обещают? – thefourtheye
да, вы можете принять обещания –
в порядке. так что вы продлеваете цепочку N раз? Как насчет 20? –