IT_Programming/JavaScript

자바스크립트 완벽가이드 - 6.19 빈문장

JJun ™ 2010. 7. 4. 20:51


마지막으로 남은 자바스크립트 문장은 빈 문장이다. 아래같이 생겼다.

;


두말하면 잔소리지만 빈 문장을 실행하면 아무런 효과도 볼 수 없고 아무것도 실행되지 않는다. 이런 문장이 도무지 왜 필요한지 의아할 것이다. 

하지만 빈 문장은 몸체가 없는 루프를 생성하려 할 때 이따금 유용하게 쓰인다. 예를 들면 다음과 같다.

//  배열 a를 초기화한다.
for(i = 0; i < a.length; a[i++] = 0) ;


for 루프, while 루프, 또는 if 문의 오른쪽 괄호다음에 실수로 세미콜론을 넣지 않도록 조심하라.

이 같은 종류의 실수는 매우 발견하기 어려운 버그를 낳아 좌절감을 맛보게 한다.

일례로, 다음 코드는 프로그래머가 원했을 방식과 다르게 작동한다.

if ((a == 0) || (b == 0));  // 이 줄은 있으나 마나,
o = null;                 // 반면 이 줄은 무조건 실행


일부러 빈 문장을 사용했다면, 코드 상에 의도적으로 그렇게 했음을 주석으로 명시하는 것이 좋다.

다음의 예를 보자.

for(i = 0; i < a.length; a[i++] = 0) /* 빈 문장 */ ;