☭DEVELOPER/#4 자바스크립트

자바스크립트 | 레츠기릿 자바스크립트 11

조반짝 2024. 1. 18. 17:13
728x90
반응형

조건문

조건문은 주어진 조건에 따라 코드를 실행하거나 실행하지 않는 문이다.


  • if문

if 에 나오는 소괄호 안에 조건(식)을 넣고, 다음 줄에 동작(문)을 넣는다.

if(조건식)
	동작문;

 

조건문은 조건식과 동작문으로 구분된다. 조건식이 참인 값이면 내부의 동작문이 실행되고, 거짓인 값이면 동작문이 실행되지 않는다.

 

만약 동작문이 하나 이상이면 동작문들을 중괄호로 감싼다.

if(조건식){
	console.log('Hello,if!')
}

 

  • else를 사용해 두 방향으로 분기하기

if문 뒤에 else를 붙이고 다시 중괄호 안에 동작문을 입력한다.

else문에도 if과 마찬가지로 동작문을 여러개 넣을 수 있고, 동작문이 하나인 경우 중괄호를 생략할 수 있다.

if(조건식){//조건식이 참인 값일 때 실행
	동작문;
}else{ //조건식이 거짓인 값일 때 실행
	동작문;
}

  • else if 를 사용해 여러 방향으로 분기하기

앞에서 else문을 사용해 조건이 true인 경우와 false인 경우, 두 가지를 분기 처리해보았다.

조건이 세가지 경우 이상일 떄 else if를 사용할 수 있다.

 

if(조건식){
	동작문;
}else if(조건식){
	동작문;
}else{
	동작문;
}

 

  • 중첩 if 조건문 사용하기

조건문도 문이기 때문에 중괄호 안에 다시 넣을 수 있다.

let first = true;
let second = false;
if(first) { 
  console.log('첫 번째 조건 충족!');
  if(second){
    console.log('두 번째 조건도 충족!');
  }else{
    console.log('두 번째 조건은 불충족!');
  }
}else{
	console.log('첫 번째 조건 불충족!');
}

  • switch 조건문으로 분기하기

if문과 switch문은 조건을 충족할 때 실행된다는 공통점도 있지만 차이점도 있다.

switch 문에는 조건식 두개가 사용된다. switch옆 소괄호 조건식의 값이 case의 비교 조건식값과 일치(===)하면 해당 동작문이 실행된다. 보통 조건식에 변수를 넣고, 비교 조건식에는 변수와 비교할 값을 넣는다.

case를 여러개 사용가능하다.

switch(조건식){
	case 비교조건식:
    	동작문;
}

switch문은 case를 발견하면 일치여부와 상관없이 그 아래 case 들의 동작문을 모두 실행한다.

따라서 원하는 결과만 얻으려면 수동으로 case에서 빠져나와야한다. 이떄 break문을 사용한다.

또한 어떠한 case도 일치하지 않을 떄 동작하는 case도 만들 수 있다. 

단, 이때는 case 대신 default라는 특수한 예약어를 사용한다.

 

  • 조건부 연산자(삼항 연산자)

if문과 switch문 외에도 분기 처리에 사용하는 식이 있다.

이는 조건부 연산자 또는 삼항연산자라고 한다.

조건부 연산자는 문이 아니라 식이기 때문에 결과값이 나온다.

조건식 ? 참일 때 실행되는 식 : 거짓일 떄 실행되는 식

 

연산자의 우선순위가 조건부 연산자의 우선순위가 보다 높기 때문에 5 > 0 이 먼저 실행되고, 이것이 조건식이 된다.

5 > 0은 true 이므로 '참입니다'가 결과값으로 출력된다.

 

조건부 연산은 보통 조건에 따라 달라지는 값을 변수에 대입하기 위해 사용된다.

조건부 연산도 중첩해서 사용할 수 있다.

가독성을 높이기 위해 내부 조건을 괄호해준다.

 

728x90
반응형