728x90
9.4 조건문 다루기
- if, else, else if 문
소괄호 안의 조건식을 기준으로 평가 후 실행
// if문
if(조건식){
// 조건식이 참일 경우 실행
}
// else문
if(조건식){
// 조건식이 참일 경우 실행
}
else{
// if문의 조건식에 해당하지 않을 경우 실행
}
// else if문
if(조건식1){
// 조건식1이 참일 경우 실행
}
else if(조건식2){
// 조건식2가 참일 경우 실행
}
else{
// 위의 조건식들에 해당하지 않을 경우 실행
}
- switch 문
소괄호 안의 값과 일치하는 case문이 있을 경우 실행
switch(key){
case value1:
// key === value일 경우 실행
break;
case value2:
// key === value일 경우 실행
break;
case value3:
// key === value일 경우 실행
break;
default:
// key가 각 case의 value와 일치하지 않는 경우 실행(기본값)
break;
}
- if 문과 조건식
조건식에 논리연산자 사용 가능
if(score >= 90 && score <= 100)
범위에 해당하는 조건식은 if 문이 유리(if 문은 조건’식’ 사용, switch문은 조건’값’ 사용)
9.5 반복문 다루기
- while 문
특정 조건을 만족하는 동안(while) 블록문 실행
while(조건식){
// 조건식이 참이면 실행
}
- 무한 반복문
조건이 계속 참으로 평가되어 무한히 실행
while(1){
// 조건식이 1(true)이므로 무한히 실행
}
- do…while 문
특정 조건이 참으로 평가되는 동안 do 다음의 블록문 실행
while문이 뒤에 위치하므로 무조건 한번은 실행됨
do{
// 블록문
}while(조건식);
- for 문
횟수를 지정하여 지정횟수가 끝날 때까지 블록문 반복 실행
초깃값 -> 조건식 -> 블록문(조건식이 참) -> 증감식 -> 조건식 -> … 순으로 실행
for(초깃값; 조건식; 증감식){
// 블록문
}
// 중첩 반복문
for(초깃값; 조건식; 증감식){
for(초깃값; 조건식; 증감식){ // 초깃값에 사용하는 변수와 다르게 지정
// 블록문
}
}
- for 문과 배열
배열과 같은 자료형에서 반복 횟수 용도로 사용
let arr = ["a", "b", "c"];
for(let i = 0; i < arr.length; i++){
console.log(arr[i]);
}
- for … in
객체 리터럴이나 배열에 접근 가능한 추가적인 반복문
for(가변수 in 배열, 객체 리터럴){
// 블록문
}
// 예시(객체 리터럴 반복)
let obj = {name : '철수', age : 20;}
for(let key in obj){
console.log(key + ":" + obj[key]); // 객체의 원소 차례대로 출력
}
// 예시(배열 반복)
let arr = ['a', 'b', 'c'];
for(let idx in arr){
console.log(idx + ":" + arr[idx]);
}
- break 문
종료 조건을 만족하지 않고 인위적으로 반복문을 종료
for(let i = 0; i<5; i++){
console.log(i);
if(i === 3) break; // i가 3일 경우 반복문 종료
}
- continue 문
특정 조건에서 블록문을 실행하지 않고 다음 회차로 넘어감
for(let i = 1; i <= 10; i++){
if(i % 2 === 1) continue; // 홀수번째 i는 블록문 실행X
console.log(i);
}
'Front-End Study > [코딩 자율학습] HTML+CSS+JavaScript' 카테고리의 다른 글
11장_자바스크립트 객체 다루기 (1) | 2023.12.06 |
---|---|
10장_자바스크립트 함수 다루기 (1) | 2023.12.05 |
9장_자바스크립트 기초 문법 살펴보기_1 (1) | 2023.12.03 |
8장_자바스크립트 시작하기 (0) | 2023.12.03 |
7장_효과적인 레이아웃을 위한 CSS 속성 다루기 (0) | 2023.12.01 |