我在文件中有以下 IIFE iife.js:
(function() {
return "Hello World!";
}());
Run Code Online (Sandbox Code Playgroud)
我想在另一个文件中得到这个函数的结果:
var result = require("./iife");
console.log(result);
Run Code Online (Sandbox Code Playgroud)
但result是{}而不是Hello World!。
如何从另一个文件访问 IIFE 的返回值,最好不要更改中的代码iife.js?
您必须在左侧捕获它:
const return_value = (function() {
return "Hello World!";
}());
Run Code Online (Sandbox Code Playgroud)
但是如果你想从 CommonJS 模块导出它,那么你需要将它分配给模块的导出:
module.exports = return_value;
Run Code Online (Sandbox Code Playgroud)
但是如果你使用的是 CommonJS 模块,那么首先使用 IIFE 是没有意义的。IIFE 用于隔离变量,模块无论如何都会这样做。
module.exports = "Hello World!";
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
54 次 |
| 最近记录: |