Я предлагаю вам взглянуть на async , это отличная библиотека для такого рода вещей и более, я действительно думаю, что вы должны привыкнуть к ее реализации.
Я бы решил вашпроблема с использованием следующей
const async = require('async')
let notuser = [];
async.forEach(users, (user, callback)=>{
User.find({}, (err, results) => {
if (err) callback(err)
if(results.length) {
notUser.push(x)
callback(null)
}
})
}, (err) => {
err ? throw err : return(notuser)
})
Однако, если вы не хотите использовать стороннюю библиотеку, вам лучше использовать promise.all и дождаться ее завершения.
РЕДАКТИРОВАТЬ: Не забудьте установить async
, используя npm
или yarn
что-то похожее на yarn add async
- npm install async