Javascript 조건문
2023. 1. 14. 15:28ㆍJavaScript/Modern Javascript
목차 |
1. if 문 |
2. 삼항연산자( ? ) |
1. if문
if 문은 조건을 평가하여, 결과에 따라 어느 코드블럭을 실행할지 결정한다.
문법(Syntax)
if( 조건절 ) { true 시 실행 블럭 } else { false 시 실행 블럭 }
< 복수 조건의 처리시 >
if( 조건절 1번 ) { 1번 true 시 실행 블럭 } else if ( 조건절 2번 ){ 2번 true 시 실행 블럭 } else { false 시 실행 블럭 }
형변환
if 문은 조건절(소괄호)의 표현식을 평가하여 불린값으로 형 변환하여 코드 블럭을 진행한다.
- falsy : 0, " ", Null, undefined, NaN 같은 형 변환시 false가 되는 값들
- truthy : 이 외의 값들
2. 삼항 연산자( ? )
if 문과 같은 역할이며, 좀 더 짧게 표현하기 위해서 생겨났다.
조건부 연산자라고 하며, ? 로 표시한다.
피연산자가 세 가지이기 때문에 삼항(ternary) 연산자라고 한다.
문법(Syntax)
조건절 ? 참 : 거짓
조건절이 참이면, 참이라 써진 곳을 반환하고, 거짓이면 기짓이라 써진 곳을 반환한다.
보통은 변수에 담아서 사용한다.
let 변수명 = 조건절 ? 참 : 거짓
여러 조건을 걸 수도 있다.
조건절 ? 참 : 조건절 ? 참 : 조건절 ? 참 : 거짓
조건절 ? 참 : [ 조건절 ? 참 : { 조건절 ? ( 참 : 거짓) } ] 구분을 위해 괄호를 써봤다.
예시(Sample)
let message;
if (login == '직원') {
message = '안녕하세요.';
} else if (login == '임원') {
message = '환영합니다.';
} else if (login == '') {
message = '로그인이 필요합니다.';
} else {
message = '';
}
위와 아래의 코드는 같은 역할을 한다.
let message = (login == '직원') ? '안녕하세요.' :
(login == '임원') ? '환영합니다.' :
(login == '') ? '로그인이 필요합니다.' :
'';
삼항연산자로 바꾸는 것 이 반드시 좋은 것은 아니며, 오히려 가독성이 떨어질 수도 있다.
복잡한 코드의 경우 if문이 조금 더 적절한 경우가 많다.
상황에 따라서 알맞게 사용하도록 하자.
참고자료
https://ko.javascript.info/ifelse
'JavaScript > Modern Javascript' 카테고리의 다른 글
Javascript 반복문 (0) | 2023.01.14 |
---|---|
Javascript 논리 연산자 (1) | 2023.01.14 |
Javascript 형변환 (0) | 2023.01.14 |
Javascript 데이터 타입 (1) | 2023.01.14 |
Javascript 객체와 in 연산자 (0) | 2023.01.11 |