
116
5장 문
자바스크립트 인터프리터는 빈 문을 실행할 때 아무 일도 하지 않습니다. 빈 문
은 빈 바디를 갖는 루프를 만들고자 할 때 유용합니다. 다음
for
루프를 보십시오
(5.4.3절 참고).
//
배열
a
를
초기화합니다
.
for(let i
=
0; i < a.length; a[i++]
=
0) ;
이 루프가 하는 일은 전부
a[i++] = 0
표현식에 들어 있으므로 루프 바디는 필요하
지 않습니다. 하지만 자바스크립트 문법은 루프 바디 안에 문이 있을 것을 요구하
므로 세미콜론 하나만 써서 빈 문을 만들었습니다.
하지만
for
루프,
while
루프,
if
문의 닫는 괄호 다음에 실수로 세미콜론을 쓰면
찾기 힘든 버그가 생길 수 있습니다. 예를 들어 다음 코드는 아마 개발자의 의도와
는 다를 것입니다.
if ((a
===
0)
||
(b
===
0)); //
이런
!
이
행은
아무
일도
하지
않습니다
.
o
=
null; //
그리고
이
행은
조건과
상관없이
항상
실행됩니다
.
의도적으로 빈 문을 사용할 때는 목적을 가지고 그렇게 했다는 것이 명확하도록 주
석을 쓰는 것이 좋습니다. 예를 들어 다음을 보십시오.
for(let i
=
0; i < a.length; a[i++]
=
0) /*
의도적으로
비움
. */ ;
5.3
조건문은 지정된 표현식의 ...