簡體   English   中英

NodeJs 中的 env / ENV 和 PORT / port 有區別嗎?

[英]Is there a difference between env / ENV and PORT / port in NodeJs?

我是 Node.js 的新手,最近看到以下用於端口連接的代碼:

process.ENV.PORT

並且還看到有人使用process.env.PORT甚至process.env.port 現在據我所知 JS 變量和屬性是區分大小寫的,那么人們怎么會使用不同的版本呢?

我的 IDE 似乎推薦所有小寫字母,所以我很好奇,我想知道的是:

  • 以上所有內容是否有效。

  • 它們為什么有效(JS 區分大小寫)

  • 它們之間有區別嗎

擁有process.env.PORTprocess.env.port取決於您。 您選擇調用任何您想要的變量。 在 Node 的官方文檔中是小寫的process.env 這是鏈接,如果您想閱讀它。

回答您的問題:

以上所有內容是否有效。 不,他們不是。 process.ENVprocess.env不同。 事實上,內置process沒有ENV屬性; 所以它是無效的,除非你創建一個process.ENV屬性(順便說一句,wichi 是一個非常糟糕的主意)但是在 windows process.env.PORTprocess.env.port它們可以互換有效

為什么它們有效 因為盡管 JS 區分大小寫,但標准的process.env屬性在 windows 下,以實現跨平台兼容性。

它們之間有區別嗎? .env.ENV完全不同.ENV甚至不存在; 在 windows 上, .port.PORT之間沒有任何實際區別。

process.env是一個由 Node.js 環境創建的 object,其中包含一些可訪問的內部密鑰,並且可以通過編程方式進行擴展/編輯。 這意味着您可以定義或編輯您想要的任何屬性。
所以...

以上是否都有效
它們都是有效的,因為任何密鑰都是有效的(甚至是process.env.notReal ),使用哪一個只是您的選擇。

它們為什么有效(JS 區分大小寫)
當然,JS 區分大小寫,所以process.env.PORTprocess.env.port不同——它們是兩個不同的屬性。 變量命名策略由您決定。

它們之間有區別嗎
我想你已經得到了答案,這只是一種代碼風格。

暫無
暫無

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

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