-
조건부 연산자 || 삼항 연산자노쉬발 킵고잉/Javascript 2022. 12. 19. 13:33
기본형식
조건식 ? 참일때 실행되는 식 : 거짓일때 실행되는 식
3덩어리 파악하면 쉬웁니다..^^
그래서 벨류에 넣을 수 ㅇ있음
let val = 5 < 0 ? 'ture' : 'false'; console.log(val); //flase
if문으로 바꾸면?
let val = 5 < 0 ? 'ture' : 'false'; console.log(val); //flase if(5<0){ console.log('true'); }else{ console.log('false'); } switch(5<0){ case true: console.log('true'); break; case false: console.log('false'); break; }
가독성이 좋게 만들면 좋음
그리고 조건부 연산도 중첩해서 사용ㄷ가능
let c1 = true; let c2 = false; let val = c1 ? c2 ? '둘 다 참' : 'c1만 참' : 'c1이 거짓'; console.log(val); //c1만 참
1. 물음표를 먼저 찾는다. 두개면 '중첩문이구나'
2. 그래서
let val = c1 ? c2 ? '둘 다 참' : 'c1만 참' : 'c1이 거짓';
내부에 있는 조건부 연산자.
let val = c1 ? c2 ? '둘 다 참' : 'c1만 참' : 'c1이 거짓';
이걸 중첩문 if로 한다면?
let c1 = true; let c2 = false; if(c1){ if(c2 == false){ console.log('둘다 참'); }else{ console.log('c1만 참'); } }else{ console.log('c1 거짓이쥬?'); }
그래서 헷갈릴 수 있으니 괄호를 적극 이용하장~~!!
let val = c1 ? ( c2 ? '둘 다 참' : 'c1만 참') : 'c1이 거짓';
요로코롬~! 이지피지!~!!
아니면 들여쓰기로도 가능함
let val = c1; ? c2 ? 'both true' : 'only c1 true' : 'c1 false so cant do c2';
근데 또 다른 방법도 있었다..ㅎㅎ
let c1 = true; let c2 = false; let val = c1 ? 'c1만 참' : c2 ? 'c2가 참' : '둘다 거짓'; console.log(val); //c1만 참
1. 조건은
let val = c1 ? 'c1만 참' : c2 ? 'c2가 참' : '둘다 거짓';
2.참
let val = c1 ? 'c1만 참' : c2 ? 'c2가 참' : '둘다 거짓';
3.거짓
let val = c1 ? 'c1만 참' : c2 ? 'c2가 참' : '둘다 거짓';
헷갈리니 묶어주랑~!
let val = c1 ? 'c1만 참' : ( c2 ? 'c2가 참' : '둘다 거짓' ) ;
연습하기 스위치로 만들거나 조건부로 바꾸거나 이프로 바꾸거나
let cond = true; let val = cond? 'true' : 'false'; console.log(val);
제로초님 공부 써머리
'노쉬발 킵고잉 > Javascript' 카테고리의 다른 글
function (0) 2022.12.22 배열 (0) 2022.12.21 if, switch (0) 2022.12.19 연산자 (0) 2022.12.13 숫자 (0) 2022.12.13