Spec-Zone.ru › RethinkDB javascript

Команда ReQL: each

Синтаксис команды

cursor.each(callback[, onFinishedCallback])
array.each(callback[, onFinishedCallback])
feed.each(callback)

Описание

Лениво итерируется по результатам набора данных по одному элементу за раз. Второй обратный вызов является необязательным и вызывается, когда итерация завершается (когда больше нет строк или когда обратный вызов возвращает false).

Пример: Обработаем все элементы!

cursor.each(function(err, row) {
    if (err) throw err;
    processRow(row);
});

Пример: Если нам нужно знать, когда итерация завершена, each также принимает второй onFinished обратный вызов.

cursor.each(function(err, row) {
        if (err) throw err;
        processRow(row);
    }, function() {
        doneProcessing();
    }
);

Пример: Итерация может быть преждевременно остановлена, возвращая false из обратного вызова. Например, если вы хотите остановить итерацию, как только row становится отрицательным:

cursor.each(function(err, row) {
    if (err) throw err;

    if (row < 0) {
        cursor.close()
        return false;
    }
    else {
        processRow(row)
    }
});

Примечание: Вам нужно вручную закрыть курсор, если вы преждевременно остановили итерацию.

Связанные команды

  • next
  • toArray
  • close (cursor)

© RethinkDB contributors
Licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
https://rethinkdb.com/api/javascript/each/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API