인프런 자바스크립트 입문 수업을 듣고 중요한 내용을 정리했습니다.
개인 공부 후 자료를 남기기 위한 목적이므로 내용 상에 오류가 있을 수 있습니다.
반복문(for, for-in, for-of, while, do-while)
- 반복문
반복문 ( )의 조건이 만족하는 동안에는 계속해서 반복문 { }의 코드가 실행된다.
- for문
<기본 구조>
for(조건){ //code }
<활용 예시>
for(var i = 0 ; i < 5 ; i++){ //i++ : i = i + 1 console.log("The number is " + i); } // 결과 : // The number is 0 // The number is 1 // The number is 2 // The number is 3 // The number is 4 // for문 (조건)안의 ;를 기준으로 첫번째 인자는 '조건의 시작점'이고, // 두번째 인자는 'for문을 종료시키는 조건', // 세번째 인자는 '조건을 실행시키기 위한 인자'이다. var i = 1; //첫번째 인자 var total = 0; for(; i <= 10 ;){ total = total + i; //total += i i++; //세번째 인자 } console.log(total); // 결과 : 55 //이렇게 첫번째 인자와, 세번째 인자를 for문의 조건 밖에서 선언한 형태로도 //for문을 작성할 수 있다. for(var i = 0 ; i < 5 ; i++){ //i++ : i = i + 1 if(i == 3){ break; } console.log("The number is " + i); } // 결과 : // The number is 0 // The number is 1 // The number is 2 //for문을 중간에 중단시키고자 할 때에는 break;를 사용하여 중단시킬 수 있다. //만약 특정 조건하에 for문을 계속 실행시키고자 한다면 //break; 대신 continue;를 사용하면 된다. //세부조건에 따라 어떤 경우에 코드를 계속 실행시키고 중단시킬지를 //continue;와 break;를 사용함으로써 구현할 수 있다. var numbers = [1, 3, 5, 7]; var len = numbers.length; for(var i = 0 ; i < len ; i++){ //여기서 변수 len은 4이다. console.log(numbers[i]); } // 결과: 1, 3, 5, 7 //배열을 사용하여 for문을 만드는 경우이다.
- for-in문
<기본 구조>
var numbers = [1, 3, 5, 7]; for(var i in numbers){ console.log(numbers[i]); } // 결과 : 1, 3, 5, 7 //i에 배열의 '인덱스번호'를 순서대로 넣어준다. ex 0,1,2,3 //배열을 활용하여 for-in문을 만들 수 있다. var person = { firstName: "John", lastName: "Kim", age: 30 }; for(var key in person){ console.log(person[key]); } // 결과 : John, Kim, 30 //key에 오브젝트의 키값을 순서대로 넣어준다. ex firstName, lastName, age //key에 오브젝트의 키값이 순서대로 들어오면서 출력이 가능하다. //오브젝트에 접근하는 방식은 person.firstName;, person["firstName"];으로 //두 가지 방식이 있는데 console.log(person[key]);의 식에서는 두 번째 방식을 //사용한 것이다.(console.log(person.key);로 접근 불가능함) //for-in문을 중간에 중단시키고자 할 때에는 break;를 사용하여 중단시킬 수 있다. //오브젝트를 활용하여 for-in문을 만들 수 있다.
- for-of문
<기본 구조>
var numbers = [1, 3, 5, 7]; for(var num of numbers){ console.log(num); } // 결과 : 1, 3, 5, 7 //num에 배열의 '값'을 순서대로 넣어준다. ex 1,3,5,7 var cars = ["Hyundai", "KIA", "Volvo"]; for(var car of cars){ console.log(car); } // 결과 : "Hyundai", "KIA", "Volvo" //num에 배열의 '값'을 순서대로 넣어준다. ex Hyundai, KIA, Volvo //for-of문을 중간에 중단시키고자 할 때에는 break;를 사용하여 중단시킬 수 있다.
- while문
<기본 구조>
While(조건){ //code } 조건을 만족하는 동안 계속해서 { }의 코드를 반복 실행한다.
<활용 예시>var i = 1; var total = 0; while(i <= 10){ total = total + i; i++; } console.log(total); // 결과 : 55 var i = 11; var total = 0; while(i <= 10){ total = total + i; i++; } console.log(total); // 결과 : 0 //조건에 충족되지 않아서 while문의 코드가 실행되지 않고 0의 결과 값이 도출되는 것이다.
- do-while문
<활용 예시>
var i = 1; var total = 0; do { total = total + i; i++; }while(i <= 10); console.log(total); // 결과 : 55 var i = 11; var total = 0; do { total = total + i; i++; }while(i <= 10); console.log(total); // 결과 : 11 //while문의 조건에 충족되지 않더라도 우선적으로 do이하의 코드를 먼저 (1회)실행한다.
<정리>
while문은 조건에 충족하면 { }의 코드를 반복 실행하지만, do-while문은 먼저 do { }의 코드를
실행하고 난 뒤에 while문의 조건을 확인한다. 즉, while문은 조건에 만족하지 않으면 애초에 코드가
실행되지 않지만, do-while문은 조건에 만족하지 않더라도 do { }의 코드가 한 번은 실행된다.
'Javascript' 카테고리의 다른 글
Javascript - String 내장함수 (0) | 2021.09.19 |
---|---|
Javascript - 함수(function) (0) | 2021.09.18 |
Javascript - 조건문(if-else, switch) (0) | 2021.09.18 |
Javascript - 연산자(산술, 비교, Logical 등) (0) | 2021.09.17 |
Javascript - Number 64비트 부동소수점 (0) | 2021.09.17 |
댓글