В моей компании есть старый проект big js, в котором реализована нестандартная реализация загрузчика модулей (не commonjs или AMD). Синтаксис загрузчика модулей:
(function(){
// create module
var Support = $.createClass($NameSpace("Util.Date"));
}())
(function(){
// load module
var BaseModule = $L("module.BaseModule");
}())
В этом случае мы не можем использовать поддержку jsDoc в javascript машинописного текста. Мы хотим, чтобы наш проект имел возможность ссылочных модулей друг друга и имел проверку типов.
В некоторых случаях мы хотим, чтобы jsDoc мог объявить глобальный интерфейс. так что мы можем delcare модуль в каждом файле ...