코딩물고기

[Javascript] 스타일 가이드 #6 본문

코딩물고기의 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
Comments