제어문
✒️ 2025-05-23 15:33 내용 수정
조건문
- Java의 Resources/Java/기본 구성 요소/제어문/조건문과 동일하다.
1. if 문
- 특정 조건문이
true일 때 처리할 내용을 블록({})에 작성한다.
if (조건문) {
// 처리할 내용
}
2. if-else 문
- 조건이
true일 때는 블록 내의 명령문을 실행하고,false일 때는else블록의 명령문을 실행한다. 0,null,undefined는false로 처리된다.
if (조건문) {
// 처리할 내용
} else {
// 조건문이 false일 때 처리할 내용
}
3. if-else if-else
- 조건문을 더 상세하게 설정할 때
else if를 사용한다.
if (조건문1) {
// 처리할 내용
} else if (조건문2) {
// 조건문2가 true일 때 처리할 내용
} else {
// 모든 조건문이 false일 때 처리할 내용
}
4. switch 문
- 조건문 혹은 전달 받은 값이 switch문 내의 case의 값들과 일치하는 여부에 따라 특정 내용을 처리하도록 만들 수 있다.
break문을 생략할 경우 아래에 있는 코드들도 모두 작동하기 때문에 유의해야 한다.
switch (조건문1) {
case A:
// 처리할 내용
break;
case B:
// 처리할 내용
break;
case C:
// 처리할 내용
break;
default:
// 일치하는 값이 없을 때 처리내용
break;
}
루프(반복문)
- Java의 루프(Loops)와 대부분이 비슷하지만 for문에서 새로운 루프가 존재한다.
- 참고 자료 : TCPSchool js control loop
1. while문
- 조건문이
true일 동안 여러 번 처리할 명령문을 작성할 때 사용한다.
while (조건문) {
// 처리할 내용
}
2. do-while문
- 명령문을 1번 무조건 실행하고, 이후 조건문이
true일 때 여러 번 처리할 명령문을 처리할 때 사용한다.
do {
// 최소 1번 이상 실행할 내용
} while (조건문) {
// 처리할 내용
}
3. for문
- 특정 횟수만 명령문을 반복할 때 사용한다.
for (let i = start; 조건문; 증감식) {
// 처리할 내용
}
4. for-in문
- 객체와 배열을 대상으로 하며, 해당 객체의 모든 열거 가능한 properties(key)를 순회하는 반복문이다.
- 루프 안에서 열거 가능한 properties를 순차적으로 접근한다.
- ex) 배열의 인덱스와 커스텀 속성
var arr = ['apple', 'banana', 'kiwi'];
arr.customProperty = 'test';
for (let i = 0; i < arr.length; i++) {
console.log(i+'<br>');
}
for (let i in arr) { // 위와 같은 동작
console.log(i+'<br>');
}
1
2
3
test
5. for-of문
- Java의 루프(Loops)#2. 향상된 for문 (for-each문)과 비슷하게 반복할 수 있는 객체를 순회하는 반복문이다.
- 루프 안에서 객체의 열거 가능한 properties의 값에 접근한다.
- ex) 배열의 요소
var arr = ['apple', 'banana', 'kiwi'];
arr.customProperty = 'test';
for (let i = 0; i < arr.length; i++) {
console.log(arr[i]+'<br>');
}
for (let value of arr) { // 위와 같은 동작
console.log(value+'<br>');
}
apple
banana
kiwi
기타 제어문
- Java의 기타 제어문과 동일하다.
- 참고 자료 : TCPSchool js control etc
1. label문
- 특정 영역을 식별할 수 있도록 해주는 식별자이자, continue문과 break문하고 같이 사용될 수 있다.
label:
for (let i = 0; i < 10; i++) {
for (let j = 0; j < 4; j++) {
console.log(i);
continue label;
}
}
2. continue문
- 루프 내에서 해당 루프의 나머지를 건너뛰고 루프의 조건식 및 증감식으로 이동한다.
- label문과 함께 사용할 수 있다.
for (let i = 0; i < 10; i++) {
if (i % 2 == 0) {
continue;
}
console.log(i);
}
3. break문
- 루프 내에서 해당 루프를 완전이 종료시키고, 반복문 바로 다음에 위치한 실행문으로 흐름을 이동시킨다.
- label문과 함께 사용할 수 있다.
for (let i = 0; i < 10; i++) {
if (i % 2 == 0) {
break;
}
console.log(i);
}
console.log("짝수를 만나 반복문을 종료합니다."); // break가 실행되면 다음 실행되는 명령문