JavaScript의 'if'문에 중괄호가 필요합니까?


Answers

예, 작동하지만 'if'또는 'else'문 바로 뒤에 한 줄까지 올립니다. 여러 줄을 사용해야 할 경우 중괄호가 필요합니다.

다음은 작동 할 것이다.

if(foo)
   Dance with me;
else
   Sing with me;

다음은 당신이 원하는 방식으로 작동하지 않습니다.

if(foo)
   Dance with me;
   Sing with me;
else
   Sing with me;
   You don't know anything;

그러나 위의 방법대로 위를 수정하면 다음과 같이 작동합니다.

if(foo){
   Dance with me;
   Sing with me;
}else{
   Sing with me;
   You don't know anything; 
}
Question

가능한 중복 :
자바 스크립트에서는 한 줄에 중괄호가 필요합니까?

나는 거의 긍정적이지만, 잘못된 코드를 피하려고합니다. JavaScript에서는 단일 if 문에 중괄호가 필요합니까?

if(foo)
    bar;

이거 괜찮아?




예, 구문 상 유효합니다. 그러나 그것은 나쁜 스타일로 간주됩니다.

한 줄에 썼다면 모호하지 않기 때문에 괜찮은 상황 있다고 주장 할 있습니다.

 if (foo) bar;

하지만 대부분의 경우 중괄호를 사용하면 코드 선명도가 높아 지므로 좋은 점입니다. 코드는 작성된 것보다 더 자주 읽혀지며 가능한 한 모호하지 않아야합니다.

또한 어떤 시점에서 두 번째 문장을 추가해야하는 경우 어쨌든 curlies가 가장 필요할 것입니다.




그것들을 구문 적으로 생략해도 괜찮지 만, 그렇게해서는 안됩니다. 모호성이 심한 한 가지 경우는

if (false)
    if (true) foo();
else
    bar();

else 가 두 번째 if 문에 속하기 때문에 foobar 도 실행되지 않습니다. 중괄호를 사용하면 문제가 없습니다.

if (false) {
    if (true) { foo(); }
} else {
    bar();
}