Skip to content
← Back to rules

jsdoc/require-param Pedantic

🚧 An auto-fix is planned for this rule, but not implemented at this time.

무엇을 하는가

함수 매개변수 모두가 JSDoc @param 태그로 문서화되어야 한다고 요구합니다.

왜 나쁜가?

이 규칙은 모든 함수 매개변수가 문서화되어야 한다는 조건을 통해 코드 품질과 유지보수성을 강제함으로써, 코드의 명확성과 가독성을 높이는 것을 목적으로 합니다.

예시

이 규칙에 부적절한 코드 예시:

javascript
/** @param foo */
function quux(foo, bar) {}

이 규칙에 적절한 코드 예시:

javascript
/** @param foo */
function quux(foo) {}

구성

이 규칙은 다음 속성을 가진 구성 객체를 수용합니다:

checkConstructors

type: boolean

기본값: false

생성자 메서드를 확인할지 여부.

checkDestructured

type: boolean

기본값: true

해체된 매개변수를 확인할지 여부.

checkDestructuredRoots

type: boolean

기본값: true

다음과 같은 코드에서 해체된 매개변수를 확인할지 여부:
function doSomething({ a, b }) { ... }. 이 예시에서는 이름이 지정된 매개변수가 없으므로, 이 옵션이 true일 경우 {a, b}에 해당하는 @param 태그가 반드시 필요합니다.

checkGetters

type: boolean

기본값: true

getter 메서드를 확인할지 여부.

checkRestProperty

type: boolean

기본값: false

나머지 속성을 확인할지 여부.

checkSetters

type: boolean

기본값: true

setter 메서드를 확인할지 여부.

checkTypesPattern

type: string

기본값: "^(?:[oO]bject|[aA]rray|PlainObject|Generic(?:Object|Array))$"

검사에서 제외되는 매개변수를 일치시키기 위한 정규식 패턴.

exemptedBy

type: string[]

기본값: ["inheritdoc"]

@param 검사에서 제외하는 JSDoc 태그 목록.

사용 방법

이 규칙을 설정 파일 또는 CLI에서 활성화하려면 다음을 사용할 수 있습니다:

json
{
  "plugins": ["jsdoc"],
  "rules": {
    "jsdoc/require-param": "error"
  }
}
bash
oxlint --deny jsdoc/require-param --jsdoc-plugin

참고 자료