nodeJS .exports,需要询问将要返回的对象



假设我们有 f1 和 f2,我们将属性/方法的对象导出到 f2。当我运行 f2 文件时,控制台同时显示 f1 和 f2 输出。

F1

var counter = function(arr){
console.log(arr.length);
};
let arr1=['0','2','3','4','1'];

let counter2 = function(arr){
console.log(arr.length*2);
}
counter2(arr1);

module.exports = {
counter,
arr1
};

F2

let  count=require('./t1');


count.counter(['1']);

当我最终在控制台上运行 f2 文件时,即使我从未导出计数器 2,它们似乎也以确切的顺序显示 10 和 1。

你在 f1 中显式调用counter2

counter2(arr1);

评估所需模块中的代码。如果不是,它就不会运行module.exports =行,也不会导出任何内容。

由于您调用了该函数(以及定义它(,因此调用了它。

你在 f1 中调用了counter2,既然你导入了 f1,这意味着你将在这个文件中执行整个代码,这意味着你将执行counter2

最新更新