我在最近使用的模块的index.js
中找到了这个:
(function() {
module.exports = require('./lib/somelib');
}).call(this);
这些是文件的全部内容。 somelib
具有实际导出的定义。这个的目的是什么,以及与以下内容有何不同:
module.exports = require('./lib/somelib');
我理解IIFE的用途(通常用于创建一个引用“隐藏”范围变量的闭包。但是我很难看到上述模式的任何好处。
任何人都可以启发我吗?