<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<link rel="shortcut icon" href="#" type="image/x-icon">
<title>반복문</title>
</head>
<body>
<h1>반복문 while</h1>
- 조건식만 지정되있다 <br>
- 초깃값, (조건식, 증감 : 블록 범위 안)
<script type="text/javascript">
/**
* 변수 = 0;
* while (조건식){
* 변수 증감(반복 횟수 정해짐)
* }
*
* */
// 횟수의 초기화
let cnt1 = 1;
while (cnt1 <= 5) {
console.log(cnt1);
//증감식
// cnt1++; bad
cnt1 += 1; // good
}
</script>
<h1>반복문 do while</h1> ex)'무조건 한번 실행' 같은 특수한 경우
- 1. do (코드를 먼저 실행), 2. 조건판단(반복여부)<br>
<script type="text/javascript">
/**
* 1. 초깃값
* 변수 = 값;
* 2. do {
* 실행코드
* 3. }while(조건);
*
*/
// 횟수의 초기화
let cnt2 = 5;
do {
console.log(cnt2);
cnt2 += 1;
} while (cnt2 < 5);
console.log(cnt2);
</script>
<h1>반복문 for</h1>
- (초깃값, 조건식, 증감 : 블록 범위 안)
- 분리 가능
<script type="text/javascript">
for(let i=0; i<6; i++){
console.log(i);
}
//상단,하단for문 콘솔값 동일
let j = 1;
for(;j<6;){
console.log(j);
j+=1;
}
//for문을 if문으로? if문 여러개를 줄인것 = for문,(상단의 if문과 콘솔값 동일)
let k =1;
if(k < 6 ){
console.log(k);
k +=1;
}
if(k < 6 ){
console.log(k);
k +=1;
}if(k < 6 ){
console.log(k);
k +=1;
}if(k < 6 ){
console.log(k);
k +=1;
}if(k < 6 ){
console.log(k);
k +=1;if(k < 5 ){
console.log(k);
k +=1;
}
}
</script>
<h1>break</h1>
- 해당 키워드를 만날 경우 반복이 중지된다.
<script type="text/javascript">
/* 인접하고 있는 블록을 빠져나온다.
{
break;
}
for(반복문 키워드) 가장 가까운 for(반복문 키워드)문의 블록을 빠져나온다.
*/
//cnt1=6
for(let cnt1=0; cnt1<5; cnt1++){
console.log(cnt1);
if(cnt1 == 1) break;
}
console.log(cnt1,`cnt1의값은?`);
//var를 사용하지 않은 이유?
var cnt3 = 100;
for (var cnt3=0; cnt3<5; cnt3++){
console.log(cnt3);
}
console.log(cnt3);
</script>
<h1>continue</h1>
- continue 키워드를 만나게 될 경우 다음 반복을 진행 (skip)
<script type="text/javascript">
/* 인접하고 있는 블록을 빠져나온다.
for
continue -> 아래에 위치한 코드는 실행x , 증감식으로 간다.
*/
for(let i=0; i<5; i+=1){
//1인경우 continue
if(i == 1) continue;
console.log(i,'for continue');
}
</script>
<h1>레이블 문</h1>
- 식별자가 붙은 문장<br>
- {}문, 반복문, switch문에서 사용한다.<br>
- 프로그램의 실행순서를 제어하는데 사용한다.<br>
- but, 레이블 문을 사용하면 프로그램의 흐름이 복잡해져서<br>->break [레이블명] 으로 써야하므로 레이블명을 다시 봐야한다.
  가독성이 저하된다.
<script type="text/javascript">
outter: {
let i = 10;
break outter;
console.log(i);
}
outterFor : for(let i=2; i<=9; i++){
console.log(i,'현재 i의 값');
for (let j=1; j<=9; j++){
// console.log(j,`현재 i:${i}의${j}번째 반복`);
if(i*j == 8) break outterFor;
console.log(j,`${i}X${j}=${i*j}`);
}
}
</script>
</body>
</html>
'category_1 > JAVASCRIPT' 카테고리의 다른 글
230324 javascript_조건문 (0) | 2023.03.24 |
---|---|
230324 javascript_변수 / 변수 표기법 / 자료형 / 연산자 (0) | 2023.03.24 |
230323 javascript_배열과반복문 (0) | 2023.03.23 |
230323 javascript 배열 (0) | 2023.03.23 |
230316 javascript,변수 자료형,연산자 (0) | 2023.03.17 |