# Варианты синтаксиса MongoDB

Работа с 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); } });`

## Практические задачи

Попробуйте все три варианта синтаксиса.

Расскажите достоинства и недостатки каждого из видов синтаксиса.

←→
↑