0.0.1 • Published 7 years ago

seq-exec v0.0.1

Weekly downloads
3
License
MIT
Repository
github
Last release
7 years ago

Класс SeqExec и его методы

Файл seq-exec.js содержит класс SeqExec предназначенный для организации последовательного исполнения JS-функций посредством механизма обратного вызова.

Методы класса SeqExec:

Название методаОписание
chainПозволяет объединить функции в цепочку из последовательно выполняющихся функций.
loopПозволяет последовательно выполнить серию повторяющихся операций.

Примеры

Простой пример: цепочка последовательно выполняющихся функций

В нижеприведённом примере ключевую роль играет вызов функции next(), только после которого происходит переход к исполнению следующей функции:

SeqExec.chain(function (next) {
    console.log("1");
    next(); // перейти к исполнению следующей функции в цепочке
}).then(function (next) {
    console.log("2");
    next(); // перейти к исполнению следующей функции в цепочке
}).then(function (next) {
    console.log("3");
});

Вывод:

$ node example1.js
Example 1:
1
2
3

Простой пример: циклы

В качестве простого примера, демонстрирующего суть метода SeqExec.loop(loopBodyCallback, stopConditionCallback) можно привести альтернативную реализацию циклов для JavaScript, без использования конструкций for и while:

var idx = 1;
SeqExec.loop(function loopBody(cont) {
    console.log(idx);
    idx += 1;
    cont(); // continue
}, function stopCondition() {
    return idx > 10 ? true : false;
});

Вывод:

$ node example2.js
Example 2:
1
2
3
4
5
6
7
8
9
10

Дополнительные пояснения к коду

ООП в JavaScript:

Синхронность и асинхронность в JavaScript:

Промисы:

npm:

Node.js:

JSLint: