if
형태 : if (표현식) 문장 1
if(표현식) 문장 1 else 문장2
조건에 따른 처리
먼저 표현식을 평가.
평가결과를 true/false로 변환
true이면 문장 1 실행, false면 문장 2 실행.
debugger
debugger 위치에서 실행 멈춤.
브라우저의 개발자 도구 창이 열려있을 때만 멈춤.(F11누르면 다음으로 넘어감)
열려있지 않으면 멈추지 않음.
ES5부터 지원.
while
형태 : while (표현식) 문장
표현식의 평가결과가 false가 될때까지 문장을 반복하여 실행, 반복이 종료되는 조건 필요.
do ~ while
형태 : do 문장 while(표현식)
처리방법은 while문과 같음. 단 do문을 먼저 실행.
var k = 0;
do {
log("do:", k);
k++;
} while (k<3){
log("while:", k);
}; //while이 true일때 do문장을 실행하러 감. k=0이면 k++ 에서 1이 되고 while문 실행. 3보다 작은 숫자이므로 true.
그러면 do문 실행. 결과로 "do:1", 동일하게 k++ 에서 2가 산출. do문 실행하여 결과로 "do:2", k가 2일 때는 while문이 false가 되고 블록을 실행하게 됨. 결과로 "while:3"
for()
형태 : for(초기값 opt; 비교 opt; 증감opt) 문장
초기값은 한번만 실행.
2번째의 비교 표현식의 평가결과가 true인 동안 문장을 반복실행.
비교opt이 false가 되는 문장 필요.
for ( var k = 0; k<2; k++){
log(k);
}; // 1,2
for문에 초기값을 작성하지 않더라도 ; 는 작성해야함
var k= 0;
for( ; k<3;){
log(k);
k++
};
break
형태 : break; break 식별자;
반복문 종료
for, for~in, while, do~while, switch에서 사용
continue
형태 : continue; continue 식별자;
반복문의 처음으로 분기(k++로 감).
for, for~in, while, do~while에서 사용.
for ( var k = 0; k<5; k++) {
if ( k === 2 || k===3){
continue;
};
log(k);
}; // k가 2나 3이면 처음으로 돌아가 반복됨. 2,3은 출력되지 않고 0, 1, 4 출력됨.
switch
형태 : switch (표현식) {
case 표현식 : 문장리스트opt
defalut : 문장리스트opt
};
switch 표현식의 평가값과 일치하는 case문 수행.
var exp = 1;
switch(exp){
case 1 : log(100);
case 2 : log(200);
}; //exp에 1을 넣고 블록 실행함. exp가 1이므로 case 1 실행함. break가 없으면 case2도 실행함. 결과는 100, 200
break 사용
var exp = 1;
switch(exp){
case 1 : log(100);
break;
case 2 : log(200);
}; //case1을 실행한 다음 break가 있으므로 switch문을 빠져나오게 되며 case2는 실행하지 않음.
일치하는 case가 없으면 default 수행
var exp = 7, value;
switch(exp) {
case 1 : value = 100;
default : value = 700;
case 2 : value = 200;
};
log(value); // 일치하는 case가 없어 default 수행함. 이때 밑에 있는 case2도 실행함. 결과값은 200
or(||) 형태
var exp = 3;
switch(exp){
case 2 :
case 3 : log(100);
}; //100
'javascript' 카테고리의 다른 글
| 함수, return, 주석 (0) | 2021.09.08 |
|---|---|
| try-catch, throw, strict 모드 (0) | 2021.09.06 |
| 문장 (0) | 2021.09.05 |
| 콤마, 그룹핑, 논리 연산자, 조건 연산자, 연산자 우선순위 (0) | 2021.09.05 |
| 관계연산자, 동등/부등/일치/불일치 연산자 (0) | 2021.09.02 |