У меня есть случай использования, когда публично доступная функция будет вызывать другую не публично раскрытую функцию в модуле AMD. Лучше ли помещать функцию за пределы возврата (outsideReturnPrivate) или внутри возврата (insideReturnPrivate) и почему?
// libFile.js
define(function() {
'use strict';
var outsideReturnPrivate = function(test) {}; //Is this better?
return function () {
var insideReturnPrivate = function(test) {}, //Is this better?
insideReturnPublic = function(test) {
// which is better and why?
// var example = insideReturnPrivate(test);
// var example = outsideReturnPrivate(test);
// return example;
};
return {
insideReturnPublic: insideReturnPublic
};
}
});
// consumer
var example = require('libFile.js'),
test = 'test',
result = example.insideReturnPublic(test);
edit: изменена закрытая функция на модуль AMD с открытым для общественности
edit 2: добавлено больше ясности в пример