nodejs文件中的函数的上下文是什么?

时间:2016-08-17 09:03:27

标签: javascript node.js module

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中,我有globalmodulemodule.exports,但不是其声明函数之一。

1 个答案:

答案 0 :(得分:1)

  

但是没有模块的上下文有什么功能?

与普通的JavaScript函数相同。在严格模式下,上下文将为undefined

(function() {
  'use strict';
  console.log(this === undefined);
})();
// true

并且在草率模式(非严格模式)全局对象中。

(function() {
  console.log(this === global);
})();
// true

注意:如果您想知道this引用了什么,在模块级别,它将是exports对象。详细说明可在this answer

中找到