Работа с MongoDB, как и все остальное в NodeJS,
имеет несколько вариантов синтаксиса:
через async-await
, через then
и через коллбэки.
Вы можете столкнутся с любым из этих вариантов, поэтому в этом уроке я покажу все синтаксисы. Но в следующих уроках я буду пользоваться первым вариантом, как более современным.
Первый синтаксис
Первый синтаксис получения данных вы уже знаете из предыдущего урока:
let res = await coll.find().toArray();
console.log(res);
Неплохо будет добавить обработку исключительных ситуаций. Сделаем это:
try {
let res = await coll.find().toArray();
console.log(res);
} catch (error) {
console.log(error);
}
Второй синтаксис
Вот второй вариант промисного синтаксиса:
coll.find().toArray().then(res => {
console.log(res);
});
Добавим обработку исключений:
coll.find().toArray().then(res => {
console.log(res);
}).catch(error => {
console.log(error);
});
Третий синтаксис
Вот третий вариант через коллбэки:
coll.find().toArray((error, res) => {
console.log(res);
});
Добавим обработку исключений:
coll.find().toArray((error, res) => {
if (!error) {
console.log(res);
} else {
console.log(error);
}
});
Практические задачи
Попробуйте все три варианта синтаксиса.
Расскажите достоинства и недостатки каждого из видов синтаксиса.