Есть ли указанный способ объявить метод или функцию для возврата void в JsDoc? В настоящее время я считаю, что void
это возвращаемое значение по умолчанию, и другие возвращаемые значения должны быть указаны специально:
/**
* @return {Integer} The identifier for ...
*/
javascript
ide
jsdoc
Башня
источник
источник
@returns {void}
что кто-то уже упоминал об этом: stackoverflow.com/a/45450508/470749Ответы:
Я не верю, что вам нужно выбирать из набора типов в JsDoc ... вы можете использовать любое имя типа, которое хотите (фигурные скобки указывают на тип), поэтому вы можете просто сделать:
@return {Void}
Хотя, наверное, для JavaScript это правильнее:
@return {undefined}
источник
@returns {void}
?null
не обязательно совпадаетundefined
@return {Void}
выдает предупреждение о проверке кода в IntelliJ IDE@return {undefined}
и@return {void}
не работает.null
никогда не то же самое, чтоundefined
. Когда что-то имеет значение NULL, оно все еще определено, но не имеет значения. Неопределенный, ну, ну, не определенный :-)void
оператором являетсяundefined
. Название типа значенияundefined
естьUndefined
, даже если имеетtypeof undefined
значение"undefined"
. ИмяVoid
не определено в спецификациях Ecmascript.Компилятор закрытия
Согласно документации компилятора Google Closure, если ничего не возвращается, аннотацию @return следует опустить.
Источник: https://developers.google.com/closure/compiler/docs/js-for-compiler#tags
jsdoc-toolkit
Однако в дальнейшей документации также указано, что returnType и returnDescription являются необязательными параметрами.
Источник: https://code.google.com/p/jsdoc-toolkit/wiki/TagReturns
Резюме
Вы можете либо опустить аннотацию возврата, либо включить ее без каких-либо параметров.
источник
undefined
поскольку это уже подразумевается в Javascript и может вызвать путаницу у тех, кто читает ваши документы.undefined
вы заставляете себя заявить о своем намерении, также полезно при его прочтении позже. Чтобы прояснить ситуацию, я не говорю, что нужно включать бесполезный оператор JS, я говорю, что всегда следует включать оператор JSDoc@returns
(я против бесполезного кода, но не против «бесполезных» комментариев).@returns {Array|undefined} - returns array if operation successful, otherwise returns undefined
Глядя на используемые ими документы ESlint
@returns {void}
Источник: http://eslint.org/docs/rules/valid-jsdoc
Поскольку мне нужно предоставить
@returns
каждой функции для прохождения тестов, чтобы отправить код для определенных проектов, это требуется в моем случае.источник
Если вам нужно сказать вслух, что ничего не возвращается, вы можете указать это в описании в свободной форме . Это полезно для прояснения ситуаций, когда пользователь может ожидать, что что-то будет возвращено. Конечно, только правильное имя функции и параметров должно сделать очевидным ожидаемый тип возвращаемого значения, но это не всегда возможно.
/** * This is a funny function. Returns nothing. * @param {string} a joke. */ var funny = function (joke) { console.log(joke); };
источник