當我看到如何檢測是否腳本在node與運行在瀏覽器上運行的例子,我看到類似的邏輯:在node.js中,`module`總是一個對象嗎?
if (typeof module !== 'undefined' && module.exports) {
// do something that applies to node
} else {
// do something that applies to browser
}
的node docs列表中的全局module
作爲一個{Object}
我相信手段typeof module
應始終爲"object"
。這在節點中總是正確的嗎?如果是這樣,做檢測邏輯更有意義,例如:
if (typeof module === 'object' && module.exports) {
// do something that applies to node
} else {
// do something that applies to browser
}
我想說,在這種情況下,兩種形式在功能上是等同的。鑑於此,我會選擇兩者中較爲常見的方式來改進[代碼質量的一個真實指標](http://www.osnews.com/story/19266/WTFs_m) – bkconrad 2012-08-10 21:14:44