switch , 삼항연산자
Switch
이번엔 switch 문법 배워봅시다.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="https://code.jquery.com/jquery-3.7.0.min.js" integrity="sha256-2Pmvv0kuTBOenSvLm6bvfBSSHrUJ+3A7x6P5Ebd07/g=" crossorigin="anonymous"></script>
</head>
<body>
<div id="quiz">
<h4>물에 빠지면 누구먼저 구할 것임?</h4>
<button>친구</button>
<button>부모님</button>
<button>반려동물</button>
</div>
<script>
</script>
</body>
</html>
이렇게 html 코드를 짜고 button을 클릭 했을때 각 버튼별로 아니면 quiz div에 이벤트 리스너를 넣고
선택한 버튼 별로 조건문을 작성해서 할 수 도있겠지만
switch/case 문법을 써서 한번 사용해봅시다.
Switch/case 예시
let 변수 = 7 + 2;
switch(변수) {
case 3 :
alert("변수 3임");
break
case 4 :
alert("변수 4임");
break
default :
alert("아무것도 해당안됨");
break
}
//차이점
// if는 다양한 조건식 가능
// switch는 변수 1개만 테스트 가능
$("#quiz").on('click', function (e){
switch (e.target.innerHTML){
case '친구' :
alert('인싸네요');
break;
case '부모님' :
alert('효자네요');
break;
case '반려동물' :
alert('동물애호가네요');
break;
}
});
삼항연산자
삼항연산자는 세 개의 피연산자를 받는 유일한 연산자.
조건문이 참이면 : 앞이 실행, 거짓이면 : 뒤가 실행된다.
if else문의 대체제로 자주 사용된다.
function getFee(isMember) {
return isMember ? '$2.00' : '$10.00';
}
console.log(getFee(true));
// Expected output: "$2.00"
console.log(getFee(false));
// Expected output: "$10.00"
console.log(getFee(null));
// Expected output: "$10.00"
삼항연산자를 너무 남용하면 아래와 같은 대참사가 나온다.
짠사람 말고는 한참을 해석해야 알아볼 수 있다.
이런 코드는 좋은 코드가 아니다.

나중에 실력을 좀 쌓고나면 꼭 이영상을 보면서 내가 짠 코드를 한번 리뷰 해보시길!!
Last updated