답변:
올바른 구문은 이제 TSDoc에서 사용되는 구문입니다 . Visual Studio Code 또는 기타 문서 도구로 의견을 이해할 수 있습니다.
구문에 대한 개요는 여기 및 특히 여기에서 볼 수 있습니다 . 정확한 사양 은 "곧"작성되어야합니다 .
체크 아웃 다른 파일의 가치는 이 하나의 유용한 표준 태그를 볼 수 있습니다.
참고 : TSDoc 기본 페이지에 설명 된대로 JSDoc을 사용하면 안됩니다. 왜 JSDoc이 표준이 될 수 없습니까? 불행히도 JSDoc 문법은 엄격하게 지정되지 않고 특정 구현의 동작에서 유추됩니다. 표준 JSDoc 태그의 대부분은 일반 JavaScript에 대한 유형 주석을 제공하는 데 주력하고 있으며 이는 TypeScript와 같은 강력한 유형의 언어와 관련이 없습니다. TSDoc은 이러한 제한을 해결하면서보다 복잡한 목표를 해결합니다.
TypeScript 팀 및 기타 TypeScript 관련 팀은 표준 공식 TSDoc 사양을 만들 계획입니다. 1.0.0
초안은 아직 확정되지 않았습니다 https://github.com/Microsoft/tsdoc#where-are-we-on-the-roadmap
TypeScript는 JSDoc을 사용합니다. 예 :
/** This is a description of the foo function. */
function foo() {
}
jsdoc을 배우려면 : https://jsdoc.app/
그러나 JSDoc에서는 유형 주석 확장명을 사용할 필요가 없습니다.
당신은 (해야하고) 여전히 다른 jsdoc에 사용할 수있는 블록 태그 와 같은 @returns
등
단지 예입니다. 내용이 아닌 유형에 중점을 둡니다.
JSDoc 버전 (문서의 통지 유형) :
/**
* Returns the sum of a and b
* @param {number} a
* @param {number} b
* @returns {number}
*/
function sum(a, b) {
return a + b;
}
TypeScript 버전 (유형 재배치에 유의) :
/**
* Takes two numbers and returns their sum
* @param a first input to sum
* @param b second input to sum
* @returns sum of a and b
*/
function sum(a: number, b: number): number {
return a + b;
}
다음을 사용하여 매개 변수, 리턴 등에 대한 정보를 추가 할 수 있습니다.
/**
* This is the foo function
* @param bar This is the bar parameter
* @returns returns a string version of bar
*/
function foo(bar: number): string {
return bar.toString()
}
VS 코드와 같은 편집기는 다음과 같이 표시합니다.
/**
을 시작한 다음 tab
함수 위의 행 을 누르면 vs-code가 매개 변수로 JSDoc 주석을 채우도록 도와줍니다.
일반 JavaScript에서와 같이 주석을 사용할 수 있습니다.
TypeScript 구문은 Ecmascript 5 (ES5) 구문의 상위 집합입니다. [...]
이 문서는 TypeScript에 의해 추가 된 문법 문법을 설명합니다
그 외에 언어 사양에서 주석에 대해서만 이것을 찾았습니다.
TypeScript는 JavaScript 프로그래머에게 선택적 형식 주석 시스템을 제공 합니다 . 이러한 유형 주석은 Closure 시스템에있는 JSDoc 주석과 비슷하지만 TypeScript에서는 언어 구문에 직접 통합됩니다. 이러한 통합으로 코드를 더 읽기 쉽게 만들고 유형 주석을 해당 변수와 동기화하는 유지 관리 비용을 줄입니다.
11.1.1 소스 파일 종속성 :
양식의 주석은
/// <reference path="..."/>
경로 인수에 지정된 소스 파일에 대한 종속성을 추가합니다. 포함 소스 파일의 디렉토리를 기준으로 경로가 분석됩니다.
출처 :
https://github.com/Microsoft/TypeScript/blob/master/doc/spec.md