#mongodb
#mongodb
Вопрос:
Я использую MongoDB 2.6.2. Мне нужно проверить forEach
name
, существует ли поле в выбранном документе.
db.testData.find(...).forEach(function(x){
// insert code here
})
Как проверить внутри forEach
функции x
, содержит ли она поле name
или нет?
Комментарии:
1. Вы также можете просто запрашивать документы, в которых нет поля, используя $exists . docs.mongodb.org/manual/reference/operator/query/exists
Ответ №1:
Mongo shell — это оболочка JavaScript, поэтому поддерживается большинство стандартных методов JavaScript. Вы можете проверить, существует ли свойство, как вы бы сделали для любого обычного объекта в JavaScript — с помощью метода hasOwnProperty():
db.testData.find({}).forEach(function(x){
if (x.hasOwnProperty('name')) {
// Do something
}
})