writed by leeyoonju0507
블록문
- 자바스크립트는 블록문을 하나의 실행단위로 취급
- 단독으로 사용가능, 제어문이나 함수정의할 때 일반적으로 사용
- 문의 종료를 의미하는 자체 종결성을 갖기 때문에 블록문의 끝에는 세미콜론을 붙이지 않음
조건문 : if~else문, switch문
1) if~else문
- 자바스크립트는 if~else문과 switch문으로 두가지 조건문을 제시한다.
- if문의 조건식은 불리언 값으로 평가되어야 한다. 만약 불리언값이 아닌값으로 평가가 되면 자바스크립트 엔진에 의해 암묵적으로 불리언 값으로 강제 변환되어 실행할 코드 블록을 결정한다.
- 대부분의 if…else문은 삼항 조건 연산자로 바꿔쓸 수 있다.
- 삼항 조건 연산자는 값으로 평가되는 표현식을 만든다. 따라서 삼항 조건 연산자 표현식은 값처럼 사용할 수 있기 때문에 변수에 할당할 수 있다. 하지만 if…else문은 표현식이 아닌 문이기 때문에 값처럼 사용할 수 없기 때문에 변수에 할당할 수 없다.
2) switch문
- swithch문은 주어진 표현식을 평가하여 그 값과 일치하는 표현식을 갖는 case문으로 실행 흐름을 옮기고 콜론으로 마친다.
- switch문의 표현식은 불리언 값보다는 문자열이나 숫자 값인 경우가 많다.
- break문이 없다면 case문의 표현식과 일치하지 않더라고 다음 case문으로 연이어 이동한다.
- default문에는 break를 생량하는 것이 일반
반복문 : for문, while문, do…while문
1) for문
2) while문
- for문은 반복횟수가 명확할 때 주로 사용하고 while문은 반복횟수가 불명확할때 주로 사용한다.
- 조건문의 평가 결과가 거짓이면 바로 종료. 만약 조건식의 평가 결과가 불리언 값이 아니면 불리언 값으로 강제 변환하여 논리적 참, 거짓을 구별
3) do…while
- 코드블록을 먼저 실행하고 조건식을 평가한다. 무조건 한번 이상 실행
break문
레이블문, 반복문, switch문의 코드블록을 탈출한다. 이런 코드 블록외에 break문을 사용하면 문법에러발생
레이블 문이란 식별자가 붙은 문: https://sewonzzang.tistory.com/24. 레이블문을 사용하면 프로그램 흐름이 복잡해져서 가독성이 나빠지고 오류발생가능성이 높아진다.