簡體   English   中英

Node.js全局變量和使用Require

[英]Node.js Global Variables and using Require

很多人建議使用“導出”對象的“模塊”,以便可以將變量引入另一個文件-因為一旦需要一個特定的文件名,以后在其他文件中要求該文件的所有調用將立即返回SAME導出的對象,該對象是首次需要該文件而沒有重新評估任何代碼的對象。 這使您可以通過要求文件來選擇要在文件之間共享的變量,而無需使用全局變量,這對於維護文件之間的狀態或拆分需要使用相同變量的代碼至關重要。

我的問題是:如何修改這些導出的變量-或者它們是不可更改的-如果它們不可更改,則它們缺少只能使用全局變量才能實現的功能...?

沒有可導出變量之類的東西。 require函數返回一個普通的Javascript對象,您所謂的“導出變量”只是該返回對象的屬性。

在內部, require()維護一個字典映射到這些對象的模塊標識符,並確保為傳遞給它的相同模塊標識符返回相同的對象。

因此,您可以根據需要修改這些屬性。 您甚至可以執行以下操作:

var connect = require('connect')
connect.foo = 42

此代碼將有效地猴子連接模塊,並添加foo “出口”到它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM