안녕하세요 백자까입니다. 이번에 반복문에 대해서 알아보도록 하겠습니다.
반복문(for, while, for in등)을 사용하면 동일한 일을 반복적으로 처리해야 되는 경우 한 번에 처리할 수 있습니다.
반복문을 사용하면 코드양도 줄일 수 있고 개발의 효율성도 높일 수 있습니다. 반복문을 사용하면 코드양도 줄일 수 있고 개발의 효율성도 높일 수 있습니다. 또한 소스 수정 시 한번만 수정하면 모두 반영이 되기 때문에 작업이 수월합니다. 반복문에는 여러 종류가 있는데, 그 중 for문을 가장 많이 사용합니다. 그 외 while문과 for in문도 많이 사용합니다.
for문
for문의 기본 사용법은 다음과 같습니다. for()문을 선언하고 ()안에 시작값을 설정합니다. 그리고 비교 연산자를 통해서 마지막 값을 설정하고 증가 또는 감소연산자가 사용하고 세미콜론(;)으로 구분합니다.
for(시작; 끝; 증가 or 감소) {
}
for문을 사용하여 변수 i의 값을 2씩 5번 증가 시켜 document에 출력하기
for()문을 선언하고 시작값으로 변수i에 숫자2를 할당하고 변수i가 10보다 작거나 같은동안 i를 2씩 증가시키며 출력합니다.
1 2 3 | for(var i=2; i <=10; i+=2) { document.write(i); } | cs |
while문
while문은 for문과 비슷한 역할을 하지만 마지막 값만 설정해 준다는 점에서 차이가 있습니다.
while(조건) {
}
while문을 사용하여 변수 i의 값을 1씩 증가시켜 document에 출력하기
시작 값인 변수i를 while문 밖에서 선언합니다.
while문을 선언해주고 i가 5보다 작으면 반복하도록 조건을 설정합니다. {}안의 내용을 조건이 마족하면 계속 반복하게 되는데, 증가 연산자를 while안에 넣어 while문이 무한 루프(loop)에 빠지지 않도록 주의합니다.
1 2 3 4 5 | var i = 0; while(i<5) { document.write(i); i++; } | cs |
for in문
for in문은 객체를 순회하면서 객체의 프로퍼티명을 넘겨줍니다. 또한 뒤에 나올 배열의 원소를 순회하면서 배열의 index를 넘겨주기도 합니다. for in문의 기본 사용법은 다음과 같습니다.
for(변수 in 객체 또는 배열) {
}
for문을 선언하고 객체 또는 배열을 순회하면서 넘어오는 객체의 프로퍼티나 배열의 원소를 담을 변수를 넣은 후 in 다음에 객체 또는 배열이 들어갑니다. 그 결과 객체의 프로퍼티 갯수나 배열의 원소 갯수만큼 {}안을 반복합니다.
baby라는 객체를 생성하여 프로퍼티 3개를 추가합니다. 스리고 7번 라인에서 baby객체르르 순회하면서 변수 property에 추가시켜준 프로퍼티의 이름이 순차적으로 넘어옵니다. 8번 라인에서 넘어온 프로퍼티명의 객체 baby에 해당 프로퍼티의 값을 읽어와 document에 출력합니다.
실행하면 "2살", "남자", "9월22일"이란 값이 순차적으로 출력됩니다.
1 2 3 4 5 6 7 8 9 | var baby = { age:"2살", sex:"남자", birthday:"9월22일" } for(var propety in baby) { document.write(baby[property]); } | cs |
break로 반복문에서 빠져 나오기
break는 반복문이 반복적으로 구문을 수행하는 과정에서 어떠한 조건에 만족했을 때 반복을 멈추고 반복문을 빠져 나올 수 있게 만듭니다.
반복문으로 0부터 9까지 i값을 증가시키는 중에 i가 5값이 되었을 때 break문이 실행되어 반복문을 벗어나게 됩니다.
1 2 3 | for(var i=0; i<10; i++) { if(i==5) break; } | cs |
참고서적 : JavaScript+jQuery입문+실전북
'Language > Javascript' 카테고리의 다른 글
HTML 태그 설명 (0) | 2018.03.12 |
---|---|
7.javascript배열 (0) | 2017.09.22 |
5.javascript객체 (0) | 2017.09.22 |
3.javascript 조건문 (0) | 2017.09.19 |
2.Javascript 연산자 (0) | 2017.09.19 |