MongoDB: toArray и forEach — CRUD операции

Рассмотрим два полезных метода курсора: toArray и forEach, часто используемых при работе с MongoDB через драйвер.

Метод toArray

Метод toArray итерирует весь курсор и возвращает массив объектов. Каждый объект в массиве представляет один документ.

Пример использования:

cursor.toArray()

Результат – массив, содержащий все документы, соответствующие запросу.

Метод forEach

Метод forEach также итерирует курсор, но позволяет выполнять операции с каждым документом, принимая функцию в качестве аргумента. Внутри этой функции указываются действия для каждого документа.

Оба метода (toArray и forEach) исчерпывают курсор. Обработка больших курсоров (например, содержащих тысячи документов) может занимать значительное время.

Примеры использования forEach

Использование функции printjson

Функция printjson выводит каждый документ в формате JSON.

cursor.forEach(printjson)

Пользовательская функция

Пример пользовательской функции, выводящей строку с индексом каждого документа:

cursor.forEach(doc => {
  print(`Индекс документа: ${doc.index}`)
});

Здесь используется стрелочная функция. Переменная doc представляет каждый документ, индекс берется из поля index. Результат – список строк вида «Индекс документа: 1», «Индекс документа: 2» и т.д.

Методы toArray и forEach – гибкие инструменты для работы с результатами запросов в MongoDB. toArray удобен для получения всех документов в виде массива, а forEach позволяет обрабатывать каждый документ индивидуально, используя возможности JavaScript. Выбор метода зависит от задачи и размера данных.

Что будем искать? Например,программа