9.4) 조건문
9.4.1 if, else, else if
* if 문
- if 뒤에 소괄호( ) 안의 조건식이 참으로 평가되면 중괄호{ } 안의 코드를 실행하는 조건문
- 숫자, 문자열, undefined, null 등 무엇을 써도 참/거짓으로 평가됨
if (조건식) {
조건식이 참이면 실행할 코드
}
|
- 블록/블록문/코드블록 : 한 개 이상의 js코드를 중괄호로 묶은 것
* else 문
- if 문의 조건식이 거짓일 때 실행되는 블록문 정의
- if문 없이 단독으로 사용할 수 없음
- 하나의 if 문에는 하나의 else 문만 사용 가능
if (조건식) {
조건식이 참이면 블록문 실행
} else {
조건식이 거짓이면 블록문 실행
}
|
* else if 문
- if 문에 조건을 추가하고 싶을 때 사용
- else if 문의 개수에는 제한 없음
- 항상 if 문 다음에 사용, else 문보다는 먼저 사용해야함
if (조건식1) {
조건식1이 참이면 블록문 실행
} else if (조건식2) {
조건식2가 참이면 블록문 실행
} else {
조건식이 모두 거짓이면 블록문 실행
}
|
* 중첩하기
- 분기처리 : 어떤 조건식을 만족할 때 어떤 블록문을 실행할지 결정하는 것
- if 문은 작성하려는 코드의 분기 처리에 따라 중첩해서 사용가능
- 중첩 횟수 제한 없음
9.4.2 switch
- switch 뒤에 오는 소괄호( ) 안의 값과 일치하는 case 문이 있을 때 해당 코드를 실행하는 조건문
- 일치 여부 확인은 일치 연산자(===)를 사용한 비교 연산처럼 값과 자료형을 함께 비교함
- 하나 이상의 case 문과 default 문, break 문 사용
switch (key) {
case value1 :
key가 value1일 때 실행할 블록문
case value2 :
key가 value2일 때 실행할 블록문
break ;
default :
아무것도 일치하지 않을 때 실행할 블록문
break ;
}
|
- break 문은 코드 실행을 멈춤
- 실행되는 블록문은 break 문을 만나기 전까지 실행됨
- default 문 : if 문의 else 문과 같음, 일치하는 case 문이 없으면 기본으로 실행되는 코드
- 의도적으로 break 문을 생략하기도 함
- case 문의 블록문이 비어있으면 break 문을 만날 때 까지 case 문 연속 실행
- default 문은 생략가능
- case문이나 default문 중 하나 이상은 있어야 함
9.4.3 if 문과 조건식 : 조건에 식을 사용, 논리 연산자나 비교 연산자를 식에 이용할 수 있음
9.4.4 if 문 vs switch 문
- if 문 : 조건에 "식" 사용 / switch 문: 조건에 "값" 사용
- switch 문은 조건으로 값을 받기 때문에 값이 범위일 때는 모든 값을 일일이 case 문으로 정의 해야함
- 범위를 이용한 조건 작성에는 if 문이 적합
- 값이 하나 일 때는 switch 문이 적합
9.5) 반복문(loop)
지정한 조건이 참(true)으로 평가되는 동안 지정한 블록문을 반복해서 실행하는 문법
while, do...while, for 문
9.5.1 while 문 : 특정 조건을 만족하는 동안 블록문 실행
while (조건식) {
조건식이 참이면 실행
}
|
9.5.2 무한 반복문
반복문의 조건이 계속 참으로 평가되어 반복문이 끝나지 않고 무한이 실행되는 것
끝나지 않는 반복문은 프로그램에 치명적인 성능 저하를 일으킬 수 있으므로 주의해야 함
9.5.3 do...while 문 : 특정 조건이 참으로 평가되는 동안 do 다음에 오는 블록문을 반복 실행
do {
블록문
} while (조건식) ;
|
- 블록문을 한 번 수행한 우에 조건식 평가
- 조건식이 거짓(false)로 평가되어도 do 블록문이 한번은 실행됨
9.5.4 for 문 : 횟수를 지정해 지정한 횟수가 끝날 때까지 블록문 반복 실행하는 반복문
조건식과 증감식이라는 독특한 실행 구조로 되어있음
for (초깃값; 조건식; 증감식) {
블록문
}
|
- 초깃값→조건식→블록문(조건식이 참일 때)→증감식→조건식 순으로 실행됨
- 초깃값은 최초 1회만 실행됨
* for 문 중첩하기
- 기본이 되는 반복문은 가장 외부에서 실행되는 for문
- 내부 for문은 외부 for 문의 실행이 종료되면 같이 종료됨
- 가장 외부에 있는 for 문의 초깃값은 실행시 1번만 실행
- 내부 반복문의 초깃값은 외부 블록문이 실행될 때마다 새로 설정됨
9.5.5 for 문과 배열
- 배열과 같은 자료형을 반복 횟수 용도로 for 문을 사용할 수 있음
- 배열에 length 속성 : 배열의 데이터 개수(배열의 길이) 확인
9.5.6 for...in
for (가변수 in 배열/객체 리터럴) {
블록문
}
|
- for문의 소괄호( ) 안에 in 키워드, in 오른쪽에는 탐생대상이 되는 배열 또는 객체 리터럴, 왼쪽에는 배열 또는 객체 리터럴을 탐색해서 키를 저장할 가변수(임시 변수)
* 객체 리터럴을 반복할 경우
for...in 문으로 객체 리터럴 반복 탐색하면 탐색 결과로 가변수에 객체 리터럴의 키가 할당되어 객체 리터럴의 키와 값 출력
* 배열을 반복할 경우
(ex)
let arr = ["orange", "banana", "apple"] ;
for (let index in arr) {
console.log(index + ": " + arr[index]) ;
}
실행결과
0: orange
1: banana
2: apple
9.5.7 break 문
- 종료 조건을 만족하지 않아도 인위적으로 반복문을 종료하는 방법
- 반복문 내부에 break문을 바로 사용하지 않고 if 문으로 처리하는 것이 일반적
- if (조건식) break ;
9.5.8 continue 문
- 반복문을 건너뛰고 실행하라는 명령
- 반복문의 블록문에서 continue문을 만나면 해당 반복 실행만 건너뜀
그대로 재현해보기
팀원들 각자 서로 코드짜오고 맞춰보기
6월 3일까지
보이는화면까지만
'인천일보아카데미 > - 학습일지' 카테고리의 다른 글
[학습일지]JAVA교육일지 16일차 (0) | 2022.05.29 |
---|---|
[학습일지]JAVA교육일지 15일차 (0) | 2022.05.29 |
[학습일지]JAVA교육일지 13일차 (0) | 2022.05.29 |
[학습일지]JAVA교육일지 12일차 (0) | 2022.05.29 |
[학습일지]JAVA교육일지 11일차 (0) | 2022.05.27 |