Bạn cần sử dụng var
như vậy:
> var a = db.col.find().limit(1)
{ "_id" : ObjectId("52dfccba5fd17fe6a4d0051a"), "a" : 16807, "b" : 475249 }
> a
{ "_id" : ObjectId("52dfccba5fd17fe6a4d0051a"), "a" : 16807, "b" : 475249 }
Thực hiện một số thử nghiệm, tôi nhận thấy rằng find()
phương thức dường như đang đặt biến thành con trỏ. Trong những trường hợp này, bạn sẽ mất biến sau câu lệnh tiếp theo.
> var a = db.col.find().limit(1)
{ "_id" : ObjectId("52dfccba5fd17fe6a4d0051a"), "a" : 16807, "b" : 475249 }
> var b = 'test'
> a
>
Nếu bạn cần giữ biến lâu hơn, hãy thử lặp lại biến một cách rõ ràng trước khi đặt biến bằng cách sử dụng toArray()
.
> var a = db.col.find().limit(1).toArray()
{ "_id" : ObjectId("52dfccba5fd17fe6a4d0051a"), "a" : 16807, "b" : 475249 }
> var b = 'test'
> a
[
{
"_id" : ObjectId("52dfccba5fd17fe6a4d0051a"),
"a" : 16807,
"b" : 475249
}
]