好的,在 NodeJS 的上下文中试验 CommonJS 模块系统。
module.exports = pricingCalculator;
function pricingCalculator (options) {
var target = {};
return target;
}
这行得通。大概定价计算器的变量声明被提升到函数范围的顶部,因此错误排序并不重要,因为函数无论如何都是通过引用传递的。我明白了。我不明白为什么以下两个版本有效:
module.exports = pricingCalculator;
var pricingCalculator = function (options) {
var target = {};
return target;
}
失败。
module.exports = pricingCalculator;
pricingCalculator = function (options) {
var target = {};
return target;
}
失败。好奇地想深入了解发生了什么。