728x90
반응형
min-max
미만, 초과 또는 이하, 이상인지 둘 중 하나로 해석될 가능성이 있다.
const MIN_COUNT = 1;
const MAX_COUNT = 100;
명시적으로 정의하기 위하여 LIMIT를 붙여서 다음과 같이 개선할 수 있다.
const MIN_COUNT_LIMIT = 1;
const MAX_COUNT_LIMIT = 100;
begin-end
일반적으로 begin은 경계에 포함되고 end는 경계에 포함되지 않는 암묵적인 규칙이 있다.
2022-01-01부터 2022-01-10까지 포함될 것을 예측할 수 있다.
function getDate(beginDate, endDate) {
// some code
}
// 2022-01-01부터 2022-01-10까지 포함될 것을 예측할 수 있다.
getDate("2022-01-01", "2022-01-11");
first-last
first-last는 begin-end와 다르게 양 끝 경계를 포함한다. (~부터 ~까지)
function getNumber(first, last) {
// some code
}
// 1,2...10 까지 모든 숫자를 포함할 것이다.
getDate(1, 10);
prefix-suffix
prefix (접두사)
- prefix (접두어)는 명사 앞에 붙인다.
- 예를 들어 Jquery에서는 $가 접두어이다. Loadsh 라이브러리는 _ (언더바) 이다.
prefix (접미사)
- suffix (접미사)는 명사 뒤에 붙인다.
- 예를 들어 값의 종류 또는 상태값을 표현할 수 있다.
// HTTP 상태값 표현
const HTTP_200_OK = 200;
const HTTP_201_CREATED = 201;
const HTTP_204_NO_CONTENT = 204;
const HTTP_400_BAD_REQUEST = 400;
const HTTP_401_UNAUTHORIZED = 401;
const HTTP_404_NOT_FOUND = 404;
const HTTP_409_CONFLICT = 409;
const HTTP_500_INTERNAL_SERVER_ERROR = 500;
parameter (매개변수)
- 인자값이 2개가 넘지 않도록한다.
- 불규칙적인 매개변수라면 arguments나 나머지 파라미터 (rest parameter) 사용을 고려한다.
- 매개변수를 객체에 담아서 넘긴다.
- 이미 만든 함수가 있고 고치기 힘들다면 래핑 (wrapping) 함수를 만든다.
나머지 파라미터 (rest parameter)
function sum(...theArgs) {
return theArgs.reduce((previous, current) => {
return previous + current;
});
}
console.log(sum(1, 2, 3)); // 6
console.log(sum(1, 2, 3, 4)); // 10
래핑 함수 (wrapping function)
Java의 메소드 오버로딩처럼 만들면 된다.
function someFunc(someArg1, someArg2, someArg3, someArg4) {
// some code
}
function someFunc2(someArg1, someArg3) {
someFunc(someArg1, undefined, someArg3);
}
728x90
반응형
'프런트엔드 > 클린코드' 카테고리의 다른 글
JavaScript - 객체 다루기 (0) | 2022.04.15 |
---|---|
JavaScript - 배열 다루기 (0) | 2022.04.15 |
JavaScript - 분기 다루기 (0) | 2022.04.14 |
JavaScript - 타입 다루기 (0) | 2022.04.14 |
JavaScript - 변수 다루기 (0) | 2022.04.14 |