JsDoc에서 void를 반환하는 메서드 또는 함수를 선언하는 지정된 방법이 있습니까? 현재 저는 void
기본 반환 값 이라고 믿고 있으며 다른 반환 값을 구체적으로 제공해야합니다.
/**
* @return {Integer} The identifier for ...
*/
답변:
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 Compiler 문서에 따르면 아무 것도 반환되지 않으면 @return 주석을 생략해야합니다.
반환 값이 없으면 @return 태그를 사용하지 마십시오.
출처 : https://developers.google.com/closure/compiler/docs/js-for-compiler#tags
그러나 추가 설명서에는 returnType 및 returnDescription이 선택적 매개 변수라고도 나와 있습니다.
returnType-선택 사항 : 반환 값의 유형입니다.
returnDescription-선택 사항 : 추가 설명.
출처 : https://code.google.com/p/jsdoc-toolkit/wiki/TagReturns
반환 주석을 생략하거나 매개 변수없이 포함 할 수 있습니다.
undefined
이것이 이미 자바 스크립트에 암시 적이며 문서를 읽는 사람에게 혼란을 줄 수 있으므로 반환한다고 말해서는 안됩니다 .
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);
};
@returns {void}
Ahhh 누군가 이미 언급했습니다. stackoverflow.com/a/45450508/470749