2
在MongoDB中,當我們訪問數據庫對象的集合時,如果集合未定義,它會隱式地調用DB.prototype中定義的getCollection函數。在調用數據庫時使用MongoDB的隱式集合訪問。 <collection>
我無法揣摩出此調用發生在蒙戈外殼來源:https://github.com/mongodb/mongo/tree/master/src/mongo/shell
這是如何工作的?
在MongoDB中,當我們訪問數據庫對象的集合時,如果集合未定義,它會隱式地調用DB.prototype中定義的getCollection函數。在調用數據庫時使用MongoDB的隱式集合訪問。 <collection>
我無法揣摩出此調用發生在蒙戈外殼來源:https://github.com/mongodb/mongo/tree/master/src/mongo/shell
這是如何工作的?
與在MongoDB 3.4中一樣,mongo
shell與作爲MongoDB服務器代碼庫一部分的腳本引擎API集成。默認收集行爲通過覆蓋db
對象的getProperty
方法來實現:src/mongo/scripting/mozjz/db.cpp。
我不相信在純JavaScript中有這樣一種自動加載的等效方法,因爲唯一可用的默認JavaScript方法是類構造函數。
它的工作方式與瀏覽器JavaScript執行非常相似。在Mongo中,V8是運行在mongo shell上發佈的javascript查詢的引擎。參考[https://docs.mongodb.org/v3.0/release-notes/2.4-javascript/] – harshavmb