Я пытаюсь использовать jsDoc в своем коде js, в котором я хочу определить: - Пространство имен. - Класс. - Статический метод. Обратите внимание, что код делает именно то, что я ожидаю во время выполнения, но у меня проблемы с началом работы с jsDoc, поэтому я задаюсь вопросом, правильный ли код...
/** @namespace
* @name myNamespace
* @description myNamespace description.
*/
if (typeof (myNamespace) == "undefined") myNamespace = { };
/** @class
* @name myClass
* @description myClass description.
* @memberof myNamespace
* @inner
*/
myNamespace.myClass = function () { };
/** @method
* @name myStaticMethod
* @description myStaticMethod description.
* @param {String} myParam. Required. myParam description.
* @return myReturnValue description.
* @remarks remarks description.
* @memberof myNamespace.myClass
* @inner
*/
myNamespace.myClass.myStaticMethod = function (myParam) {
var myReturnValue = myParam;
return myReturnValue;
};
Когда я генерирую с помощью jsDoc, я вижу в индексе: - Исправьте определение myNamespace. - Правильное определение myClass. Когда я захожу внутрь myClass, я не вижу myStaticMethod... myStaticMethod нигде нет. Мой JS закодирован правильно? Если правильно закодирован... Правильно ли написаны комментарии? Что случилось?
Большое спасибо...
typeof
— это оператор, а не функция; нет необходимости в скобках вокруг значения, по той же причине вы можете просто написать1 + 2
вместо(1) + (2)
иnew ClassName()
вместоnew (ClassName())
. - person T.J. Crowder   schedule 19.09.2014myNamespace
. Лучший способ:var myNamespace;
(который не имеет никакого эффекта, если он уже существует), за которым следует ваш тестtypeof
. - person T.J. Crowder   schedule 19.09.2014