nodejs文件中的函数的上下文是什么? 如果我需要导出功能,我只需编写
module.exports = function () {};
or
module.someFunction = function () {};
但是没有模块的上下文有什么功能?
function someFunction () {};
console.log(module); // not someFunction
console.log(module.exports); // not someFunction
P.S。我在哪里可以看到此文件中的一些已声明函数列表?在浏览器中我有window
。在nodejs中,我有global
,module
,module.exports
,但不是其声明函数之一。
答案 0 :(得分:1)
但是没有模块的上下文有什么功能?
与普通的JavaScript函数相同。在严格模式下,上下文将为undefined
(function() {
'use strict';
console.log(this === undefined);
})();
// true
并且在草率模式(非严格模式)全局对象中。
(function() {
console.log(this === global);
})();
// true
注意:如果您想知道this
引用了什么,在模块级别,它将是exports
对象。详细说明可在this answer。