Теперь я замечаю одно, что странно для меня, и я не могу найти надлежащую документацию. Когда я получаю документы из коллекции с помощью Mongoose.find(), я записываю их в консоль. Что написано это:Что представляют собой объекты, разделенные запятой, в Javascript?
{
name: 'first document'
},{
name: 'second document'
}
(Конечно, они _ID, но это для простоты.)
Что это в JavaScript? Я имею в виду, я пытался сделать .forEach на него, но я получаю:
TypeError: undefined is not a function
at Array.forEach (native)
...
, но я могу нормально сделать что-то вроде:
User.find({}, function (err, users){
// users.forEach(console.log('iterated')); -> returns error that I've described
for(var i=0; i<users.length; i++){
console.log('iterated');
}
console.log('users' + users);
});
EDIT
Ошибка типа из-за не проходящей функции до forEach
способ, как упомянуто в комментариях. Но почему он не возвращает что-то вроде:
[{
name: 'first document'
},{
name: 'second document'
}}
Вы не передавая функцию 'Foreach()'. Вы передаете 'undefined', потому что это то, что возвращает' console.log() '. –
Есть ли у них '_id' внутри или вне объекта? Это строка JSON? – krillgar
Не путайте «то, что регистрируется на консоли», это «код JavaScript» – Quentin