갈푸라떼
갈푸라떼는 개발중
갈푸라떼
전체 방문자
오늘
어제
  • 분류 전체보기 (232)
    • CS (0)
      • CSinfo (0)
    • Frontend (15)
      • HTML,CSS (1)
      • Javascript (2)
      • React (0)
      • React Hook (12)
    • Backend (0)
      • Python (0)
      • Node.js (0)
      • php (0)
    • DB (2)
      • MySQL (2)
      • BigQuery (0)
      • Mongodb (0)
    • Study (186)
      • JavaScript (72)
      • JavaScript(Clean code) (50)
      • Node.js (11)
      • HTML,CSS (13)
      • React (30)
      • TypeScript (10)
      • React-Native (0)
    • Error (2)
      • error (2)
    • Git (22)
      • Git (22)
    • Help Coding (4)
      • Useful websites (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록
  • Github

공지사항

인기 글

태그

  • SPREAD
  • Babel
  • 호이스팅
  • 실행 컨텍스트
  • prototype
  • 렉시컬 환경
  • 정적 레벨
  • 함수
  • 이터러블
  • 심볼
  • class
  • 프로토타입
  • 상속
  • 스코프 체인
  • function
  • symbol
  • 네이밍
  • 원시타입
  • structure
  • 객체타입
  • 싱글스레드
  • 인터프리터
  • 오버라이딩
  • 자바스크립트엔진
  • ECMAScript
  • this
  • nodemon
  • 컴파일러
  • Arrow
  • PM2

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
갈푸라떼

갈푸라떼는 개발중

Study/JavaScript(Clean code)

[JavaScript][clean-code] 매개변수의 순서가 경계이다.

2022. 5. 28. 03:05

* 매개변수의 순서가 경계다.

  • 매개변수의 순서만 잘지켜도 그것 자체가 경계이다.
  • 호출하는 함수의 네이밍과 인자의 순서의 연관성을 고려한다.
  • 다양한 관계들을 함수의 네이밍과 인자를 통해서 역할을 유추할 수 있다.
  • 함수를 만들때 함수의 네이밍과 인자를 고려해준다.
getRandomNumber(1, 50);
getDates('2021-10-01', '2021-10-31');
getShuffleArray(1, 5);

 

* 유지보수에 취약한 함수를 만들지 않기 위해서는

  • 매개변수를 2개가 넘지 않도록한다.
  • 그런데도 인자가 너무 많을거 같으면 arguments, rest parameter를 이용한다.
  • 혹은 매개변수를 객체에 담아서 넘긴다.
    • 객체이므로 순서가 상관없으므로 다양하게 인자를 다룰수 있다.
    • 아래의 예시 참조
function someFund({ someArg1, someArg2, someArg3, someArg4 }) { }
  • 이미 만들어진 함수가 있다면 랩핑하는 함수를 이용한다. (정 안되면)
    • 아래의 예시 참조
function getFunc(someArg1, someArg3) {
  someFunc(someArg1, undefined, someArg3)
}

'Study > JavaScript(Clean code)' 카테고리의 다른 글

[JavaScript][clean-code] Truthy & Falsy  (0) 2022.05.29
[JavaScript][clean-code] 삼항연산자  (0) 2022.05.29
[JavaScript][clean-code] prefix-suffix  (0) 2022.05.28
[JavaScript][clean-code] first-last  (0) 2022.05.28
[JavaScript][clean-code] min - max & begin - end  (0) 2022.05.28
    'Study/JavaScript(Clean code)' 카테고리의 다른 글
    • [JavaScript][clean-code] Truthy & Falsy
    • [JavaScript][clean-code] 삼항연산자
    • [JavaScript][clean-code] prefix-suffix
    • [JavaScript][clean-code] first-last
    갈푸라떼
    갈푸라떼

    티스토리툴바