01. if문
if문은 가장 간단한 조건문이다.
주어진 조건이 참이면 true, 아니면 false를 출력한다.
if(0){
document.write("실행되었습니다. (true)");
} else {
document.write( "실행되었습니다.(false)"); // 0은 false이므로 얘가 출력 됨
}
결과확인하기
true조건 : 1, 2, "0"(문자), "1"(문자), "ABC"(문자), 0<10(비교연산자), [](배열), {}(객체), true
false조건 : 0, null, undefined, false, ""(문자열 안이 빈칸인 경우:빈문자열)
02. if문 생략
위의 if문에서 {}(중괄호)를 생략하는 방법이다.
const num = 100; //100을 num에 넣는다.
if(num) document.write ("실행되었습니다.(true)"); //숫자 100은 true 이므로 얘가 출력됨
else document.write ("실행되었습니다.(false)");
결과확인하기
03. 삼항 연산자
if-else문을 간단하게 표현하는 효율적인 방법이다.
참과 거짓에 따라 선택적으로 실행되는 조건문으로 else가 필요없다
삼항연산자는 물음표(?)와 콜론(:)을 사용하여 구성된다.
const num = 100;
// 생략 전 if-else문
// if(num == 100){
// document.write("true")
// } else {
// document.write("false")
// }
(num == 100) ? document.write("true") : document.write("false"); //참 이므로 true출력
결과확인하기
04. 다중 if
여러 개의 if문을 연속해서 사용하는 것이다.
else if를 통해 계속해서 조건을 만들어 나갈 수 있으며
마지막에는 else를 쓰지않는다.
각 문은 독립적으로 실행된다.
const num = 100;
if(num == 90){
document.write("실행되었습니다(num == 90)");
}else if(num == 100){
document.write("실행되었습니다(num == 100)");//num == 100 조건 충족되므로 출력된다
}else if(num == 110){
document.write("실행되었습니다(num == 110)");
}else if(num == 120){
document.write("실행되었습니다(num == 120)");
}else {
document.write("실행되었습니다");
}
결과확인하기
05. 중첩 if
중첩 if문은 if문 안에 또 다른 if문을 사용하는 것이다.
이렇게 중첩된 if문은 복잡한 조건문을 작성할 때 사용된다.
조건에 충족하는 실행문을 모두 출력할 수 있다.
const num = 100;
if( num == 100){
document.write("실행되었습니다.(1)"); //조건 충족 =출력
if(num == 100){
document.write("실행되었습니다.(2)"); //조건 충족 =출력
if(num == 100){
document.write("실행되었습니다.(3)"); //조건 충족 =출력
}
}
} else {
document.write("실행되었습니다.(4)")
}
결과확인하기
실행되었습니다.(2)
실행되었습니다.(3)
06. switch문
조건문에서 비교할 값이 많을 경우 if else문을 반복 사용하는 것보다
switch문을 사용하는 것이 가독성을 높일 수 있다. 조건이 맞으면 case를
비교할 필요가 없으므로 break; 로 종료 시킨다.
const num = 100;
switch(num){
case 90:
document.write("실행 90");
break; // 생략 가능 하나 조건이 맞으면 더이상 비교할 필요가 없으므로 종료시킴.(리액트방식)
case 80:
document.write("실행 80");
break;
case 70:
document.write("실행 70");
break;
case 60:
document.write("실행 60");
break;
case 50:
document.write("실행 50");
break;
default:
document.write("실행 0"); // 답이 없으므로 기본값이 출력된다.
}
결과확인하기
07. while문
조건이 참일 때 실행되는 반복문으로 문장이 실행되기 전 먼저 참과 거짓 여부를 판단한다.
그 다음 참이면 while문 안의 문장들을 실행시킨다.
// for(let i=0; i<5; i++){
// document.write(i);
//} 결과값이 같은 for문
let num = 0;
while(num<5){ // 문장 실행 전 참/거짓 판단 : 0~4까지 참(true)
document.write(num);
num++; // 조건에 맞는 만큼(5번)반복 출력시키는 역할
}
결과확인하기
08. do while문
while문과 유사하지만 while문은 조건식을 먼저 읽고 참/거짓을 가리는 반면
do while문은 먼저 문장 실행 후 (do 블록 코드 먼저 실행) 조건의 참/거짓을 가린다.
let num2 = 0; // num2는 0
do { // 먼저 do 블록 실행
document.write(num2);
num2++;
}while (num2<5);
결과확인하기
09. for문
for문은 특정 구문을 반복시킬 때 사용하는 반복문 종류 중 하나이며 사용빈도가 높다.
let sum = 0;
let num = [1,2,3,4,5,6,7,8,9]; //배열 개수 9개
for(let i=0; i<num.length; i++){ //i가 9가 될 때 까지 반복
document.write(num[i]+'+', end" "); // 1,2,3,4,5,6,7,8,9
sum += num[i]; // sum = sum + num[i]; 의 생략형
}
document.write('='+sum) // 1부터 9까지 합
결과확인하기
10. 중첩for문
for문 안에 새로운 for문이 있는 형태이며 맨 위의 for문을 먼저 실행시킨 다음
참일 경우 아래의 중첩for문으로 넘어와서 조건이 참일 때 까지 실행시키고 난 후 다시
처음 for문으로 돌아가서 실행하고 또 참이면 중첩for문을 실행 시키는 식의 반복 구조 이다.
for(let i=1; i<=10; i++){
document.write(i,"<br>")
for(let j=1; j<=10; j++){
document.write(j);
}
}
결과확인하기
123456789102
123456789103
123456789104
123456789105
123456789106
123456789107
123456789108
123456789109
1234567891010
12345678910
11. break문
조건식이 맞을 경우 더 반복할 수 있음에도 불구하고 미리 중단(break)시켜주는 실행문으로
무한 반복문에서 유용하게 사용할 수 있다.
for(let i=1; i<20; i++){
document.write(i);
if(i == 10){
break; // 20까지 반복할 수 있음에도 i가 10이 되면 강제종료
}
}
// 둘이 값이 다름
for(let i=1; i<20; i++){
if(i == 10){
break;
}
document.write(i);
}
결과확인하기
2
3
4
5
6
7
8
9
10
document.write(i);를 밖으로 뺐을 때
1
123456789102
123456789103
123456789104
123456789105
123456789106
123456789107
123456789108
123456789109
1234567891010
12345678910123456789
12. continue문
실행해야 할 명령문을 실행하지 않고 다음 명령문으로 건너뛰어 실행하는 명령문으로
for문에 중첩된 if문 괄호 안의 조건식이 참일 경우 해당 값을 건너뛰고 다음 값을
순서대로 출력한다.
for(let i=1; i<20; i++){
if(i == 10){ // 10을 건너뛰고 1-20이 출력됨
continue;
}
document.write(i) // document.write가 맨 위에 있을 경우 위의 continue문을 무시하고 10 출력됨
}
// document.write가 맨 위에 있을 경우 위의 continue문을 무시하고 10 출력됨
for(let i=1; i<20; i++){
document.write(i);
if(i == 10){
continue;
}
}
결과확인하기
2
3
4
5
6
7
8
9
1
1
1
1
1
1
1
1
1
20