Skip to content
← Back to rules

unicorn/no-object-as-default-parameter Pedantic

작동 방식

매개변수의 기본값으로 객체 리터럴을 사용하는 것을 금지합니다.

왜 좋지 않은가?

기본 매개변수는 객체 리터럴을 통해 함수에 전달되어서는 안 됩니다. foo = {a: false}와 같이 단일 옵션만 사용할 때는 문제없이 작동합니다. 그러나 추가 옵션이 생기면, {a: true}와 같이 하나의 옵션만 전달할 경우 전체 foo = {a: false, b: true} 객체를 대체할 위험이 있습니다. 이 이유로, 객체 분해 구문을 사용하는 것이 더 적절합니다.

예시

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

javascript
function foo(foo = { a: false }) {}

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

javascript
function foo({ a = false } = {}) {}

사용 방법

설정 파일 또는 명령줄 인터페이스에서 이 규칙을 활성화하려면 다음을 사용하세요:

json
{
  "rules": {
    "unicorn/no-object-as-default-parameter": "error"
  }
}
bash
oxlint --deny unicorn/no-object-as-default-parameter

참고 자료