반복문의 구조
1. for문
- 초기화, 조건식, 증감문을 ';'으로 구분
- 초기화, 조건식, 증감문은 선택사항이지만 조건문 생략시 break 필요
- 상황에 따라 초기화, 조건식, 증감문 생략 가능
*생략해도 세미콜론 ; 표시 필수, 생략된 for문은 while문과 형태가 같음 - 초기화 : let 또는 var를 이용해 선언
- var : 반복문에 제한되지 않음
- let : 반복문의 지역변수가 됨
- 같은 타입일 경우 ';'를 이용해 하나 이상의 변수의 초기화 및 증감이 가능
for(초기화; 조건식; 증감문) {
// 반복할 내용
}
2. while문
- 초기화, 증감문은 따로 작성
- 조건식만 괄호 안에 작성
- 초기화와 증감문이 필요없을 때 사용
- 기본적인 동작구조는 for문과 동일
초기화
while(조건식){
//반복할 내용
증감문
}
3. 반복문에 조건문 적용
for (let i = 0; i < 10; i++) { //1 ~ 9
if (i % 2 === 0) { //2로 나눳을때 나머지가 0인 경우
continue; //스킵
}
console.log(i); //1 3 5 7 9
}
for (let i = 0; i < 10; i++) { //1 ~ 9
if (i === 5) { //i의 값이 5인 경우
break; //5에서 멈춤
}
console.log(i); //0 1 2 3 4 => 5는 포함되지 않음
}
for(let i=1; i>0; i++){
let answer = confirm("계속하시겠습니까?");
if (!answer){
break; // 취소를 누르면 멈춤
}
}
while(true){
let answer = confirm("계속하시겠습니까?");
if (!answer){
break; // 취소를 누르면 멈춤
}
}
4. 이중 for문
for(초기화; 조건식; 증감문) {
for(초기화; 조건식; 증감문) {
//반복할 내용
}
}
- for문 중첩 가능
for(초기화; 조건식; 증감문) {
for(초기화; 조건식; 증감문) {
//반복할 내용
}
for(초기화; 조건식; 증감문) {
//반복할 내용
}
}
- 중첩된 for문 만에 또 다른 for문 사용 가능 (다중 for문)
5. for문 구체화
//머리로는 알겠는데 정작 if문 등을 응용해서 작성하려고 하면 뇌정지 오는 겨우가 종종 생긴다
//그럴 경우 for문을 구체화해서 동작구조를 천천히 뜯어보는게 좋다
//<추상화>
for (let i = 0; i < 3; i++) {//i는 0부터 시작, i가 3보다 작을 때, i를 1씩 증가
console.log(i) //0, 1, 2
}
//<구체화>
let i = 0 //i는 0부터 시작
if (i < 3) { //i가 3보다 작을 때
console.log(i) //i === 0
i = i + 1 //0 + 1 = 1
}
if (i < 3) { //i가 3보다 작을 때
console.log(i) //i === 1
i = i + 1 //1 + 1 = 2
}
if (i < 3) { //i가 3보다 작을 때
console.log(i) //i === 2
i = i + 1 //2 + 1 = 3이 나와야되지만 if의 조건문이 i가 3미만일때이므로 (true가 아니므로) 동작하지 않음
}
console.log(i) //2
Reference
반응형
'CodeStates > JavaScript' 카테고리의 다른 글
[JavaScript] 원시 자료형과 참조 자료형 (0) | 2022.02.09 |
---|---|
[JavaScript] 호이스팅 (0) | 2022.01.21 |
[JavaScript] 배열과 객체 (0) | 2022.01.04 |
[JavaScript] 문자열 (0) | 2021.12.19 |
[JavaScript] 조건문 (0) | 2021.12.19 |
댓글