좋아, NodeJS의 컨텍스트에서 CommonJS 모듈 시스템으로 실험 해 보겠습니다.CommonJS 모듈 (nodejs 포함), strangeness
module.exports = pricingCalculator;
function pricingCalculator (options) {
var target = {};
return target;
}
이것은 작동합니다. 아마도 pricingCalculator의 변수 선언은 함수 범위의 맨 위에 올라서므로 어차피 함수가 참조로 전달되기 때문에 잘못 정렬하는 것은 중요하지 않습니다. 알 겠어. 내가 이해하지 못하는 이유는 다음과 같은 두 가지 버전이 작동하는 이유입니다.
module.exports = pricingCalculator;
var pricingCalculator = function (options) {
var target = {};
return target;
}
실패합니다.
module.exports = pricingCalculator;
pricingCalculator = function (options) {
var target = {};
return target;
}
실패. 무슨 일이 일어나고 있는지 깊이 알기를 호기심.
문제에 대한 자세한 설명을 찾을 수 있었습니까? –