코딩물고기의 IT월드
[Javascript] 스타일 가이드 #6
코딩하는물고기
2021. 1. 19. 22:47
728x90
자바스크립트 스타일 가이드
15. 문장
15-1. 간단한 문장
- 각 줄은 단 한개의 문장만 있어야 하며 모든 간단한 문장은 세미콜론으로 마쳐야 한다.
- 좋은 예
count++;
a = b;
- 나쁜 예 : 한 줄에 여러 문장이 있음
count++; a = b;
15-2. return 문
- return 문에서 반환하는 값은 더 명확한 ㅁ표현을 위한 부득이한 경우가 아니라면
괄호를 사용하지 않습니다
return;
return collection.size();
return (size > 0 ? size : defalutSize);
15-3. 복합문
- 복합문은 중괄호 안에 여러 개의 문장이 있는 것을 말한다.
- 중괄호 안의 문장은 복합문에서 한 단계 이상 들여쓰기해야한다
- 복합문의 시작을 알리는 여는 중괄호는 줄 끝에 있어야 하고 닫는 중괄호는
줄 맨 앞에 있어야 한다. 또한 닫는 중괄호는 복합문과 들여쓰기 단계가 같아야 한다. - if 문이나 for 문과 같은 제어문에서 사용할 때 문장이 단 하나라 하더라도 중괄호는 모든 문장을 감싸야 한다. 이 규칙은 문장을 추가할 때 중괄호를 빠뜨려 실수에 의한 에러가 발생하는 것을 방지한다.
- if 문과 같이 키워드로 시작하는 문장은 키워드 다음에 공백이 하나 있어야 하며 여는 중괄호 앞에도 공백이 있어야 한다.
15-4. if문
- 좋은 예
if (condition) {
statements
}
if (condition) {
statements
} else {
statements
}
if (condition) {
statements
} else if (condition) {
statements
} else {
statements
}
- 나쁜 예 : 부적절한 공백
if(condition){
doSomething();
}
- 나쁜 예 : 중괄호가 없음
if(condition)
doSomething();
- 나쁜 예 : 모든 문장이 한 줄에 있음
if (condition) { doSomething();}
- 나쁜 예 : 중괄호 없이 모든 문장이 한 줄에 있음
if (condition) doSomething();
15.5 for 문
- for 문은 다음과 같은 형태로 작성해야 한다
for (초기화; 조건식; 증강식){
문장
}
for (변수 in 객체){
문장
}
- 변수는 for 문의 초기화 부분에서는 선언하지 않는다
- 좋은 예
var i,
len;
for (i=0, len=10; i < len; i++){
// code
}
- 나쁜 예 : 초기화 부분에서 변수를 선언
for (var i=0, len=10; i < len; i++) {
// code
}
- 나쁜 예 : 초기화 부분에서 변수를 선언함
for (var prop in object){
// code
}
- for...in 문을 사용할 때는 hasOwnProperty()를 사용 객체 멤버를 걸러낼 필요가 있는지 꼭 재확인해야 한다.
15.6 while문
- 좋은 예
while (조건식) {
문장
}
15.7 do 문
- 좋은 예
do {
문장
} while (조건식);
- 문장 마지막에 세미콜론이 있다는 걸 주의 깊에 봐야한다.
또한 while 키워드 앞뒤에 공백을 반드시 넣어야 한다
15.8 switch 문
- 좋은 예
switch (표현식) {
case 표현식:
문장
default:
문장
}
- case는 switch를 기준으로 한 단계 들여쓰기 한다.
첫 번째 case를 제외한 나머지 case와 default는 이전 줄에 반드시
빈 줄이 있어야 한다 - default를 제외한 모든 case는 break, return, throw로 마쳐야하고,
case 까지 이어지는 switch를 작성하려면 주석으로 의도적으로
break, return, throw를 넣지 않았음을 표시해야한다
- 좋은 예
switch (value) {
case 1:
<!-- 다음 case에서 처리 -->
case 2:
doSomething();
break;
case 3:
return new;
default:
throw new Error(*여기까지 실행되면 안됨);
}
- switch에 default 케이스가 필요 없다면 주석으로 남겨 놓아야 한다
- 좋은 예
switch (value) {
case 1:
<!-- 다음 case에서 처리 -->
case 2:
doSomething();
break;
case 3:
return true;
//default 없음
}
15.9 try문
- 좋은 예
try {
문장
} catch (변수) {
문장
}
try {
문장
} catch (변수) {
문장
} finally {
문장
}
참고문헌 : 읽기좋은 자바스크립트 코딩 기법 / Maintainable Javascript / 니콜라스 자카스
728x90