My Melody Kawaii

JAVASCRIPT

자바스크립트, 제어문은 무엇으로 이루어져 있을까?

younajeong 2023. 2. 28. 19:38

“ 지연되는 프로젝트에 인력을 더 투입하면 오히려 더 늦어진다. ”

- Frederick Philips Brooks
Mythical Man-Month 저자
728x90

제어문

 
제어문이란 프로그램에서 필요한 결과 값을 도출하기 위해 실행문의 순서를 제어하거나 반복시키는 문장을 말합니다. 제어문은 크게 조건문,반복문,중지,건너뛰기의 분류로 나눌 수 있습니다.  저번에 살펴 보았던 제어문과 더불어 새롭게 추가된 제어문에 대해서 함께 알아보도록 해요!
 
 

분류 제어문
조건문 if, swich
반복문 while, do while, for
중지,건너뛰기 break,continue

 

01. 조건문 

 
 

if문

가장 기본적인 사용하는 조건문으로 주어진 조건이 참일 경우에만 코드 블록이 실행할 수 있습니다. 

if(조건식){
	document.write("실행되었습니다.(ture)");
    //조건식을 쓴 후 실행문을 써줘야 합니다.
}

 
 
 

if문 생략

기본 if 문을 생략해서 쓸 수 있습니다.

//기본 if문 사용

const num = 100;
if(num){
if(num) document.write("실행되었습니다.(ture)");
}else {
documetn, write("실행되었습니다."(false));

//생략해서 사용한다면

if(num)document.write("실행되었습니다."(ture));
else document.write("실행되었습니다."(false));

 
 

삼항연산자

?를 사용하여 결과값을 불러올 수 있습니다.

//기본형식

const num = 100;

if(num == 100){
	document.write("ture")
}else {
	document.write("false");
    
// ?표와 : 를 사용한 형식

(num == 100)? document.wirte("ture") : document.write("false");

//효율성이 더 좋고 소스가 복잡해질 떄 간단하게 읽을 수 있습니다.

 
 

다중 if (else if)

1개의 값을 여러 조건으로 체크해야 할 때 사용하는데 조건이 맞지 않을 경우를 고려해서 else를 사용할 수 있습니다.

const num = 100
    if(num == 90 ){
        document.write("실행되었습니다(num == 90)");
    }else if (num == 100) {
        document.write("실행되었습니다(num == 100)");
    }else if (num == 110) {
        document.write("실행되었습니다(num == 110)");
    }else if (num == 120) {
        document.write("실행되었습니다(num == 120)");
    }else {
        document.write("실행되었습니다");
    }

 
 
 

중첩 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)");

 
 

swich문

다중 if문과 비슷한 형태를 지녔으며 swich 값의 값과 case의 값들을 하나씩 비교하여 일치하는 case를 실행시켜 줍니다. if문과 다르게 특정 조건에 만족할 때 { }블록을 스스로 빠져나가지 못하기 때문에 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;  
            //break문(중간에 끝내는 것)을 써야 무한에 빠지지 않습니다. 빠지면 모든 케이스가 다 실행이 된다.
            
        default:
        document.write("0");

 
 
 

02. 반복문 

 

while문

for문과 비슷한 형태를 가지고 있으며 while을 사용해서 나타낼 수 있습니다.

let num = 0;            //초기값
    
while(num<5){          //조건문
   document.write(num);     
   num++;      //실행이 한번에 되지 않는다

 
 

do while문

do와 while을 사용해서 나타낼 수 있습니다. do while문에서는 do를 먼저 실행하기 때문에 첫번째 실행은 조건에 상관없이 실행합니다.

 let num2 = 0;
    do{
        document.write(num2);
        num2++;
    }while (num2<5);    //do 문법을 쓰는 이유 : 실행이 한번에 된다

 
 

for문

for문의 형식을 이용해서 조건에 맞는 값을 나타낼 수 있습니다.

//for문 기본 형식

for(let i=1; i<=100; i++){
        document.write(i);
        
//for문을 이용해서 홀수값 짝수 값을 구한 후 홀수는 파란색 짝수는 빨간색으로 나타내는 법

const arr = [1,2,3,4,5,6,7,8,9,];

    for(let i=0; i<arr.length; i++){
        document.write(arr[i]);
    }
    for(let i=1; i<=arr.length; i++){
            if(i % 2 == 0){
            document.write("<span style='color:red'>"+i+">span>");
        } else {
             document.write(`<span style='color:blue'>"+i+"</span>`);
            } 
            
//for문을 이용해서 1부터 9까지 모든 값 더하는 법

let unm = [1,2,3,4,5,6,7,8,9];
    let sum = 0;

    for(let i=0; i<=num.length; i++){
        document.write(num[i]);
        sum += num[i];
    }
    document.write("<br>")
    document.write(sum)

 
 

중첩 for문

for문 안에  또 다른 for문을 이용할 수 있습니다. for문 안에 if문이 들어갈 수 있고 반대로 if문 안에 for문이 들어갈 수도 있습니다.

//중첩 for문을 사용해서 1~100까지 구하는 방법입니다.

for(let i=1; i<=10; i++){
        document.write(i,"<br>");
        for(let j=1; j<=10; j++){
            document.write(j);
            
//중첩 for문을 사용해서 테이블 만드는 방법입니다.

let table = "<table border = '1'>";
        let count = 0;

        for(let i=0; i<5; i++){ 
            table += "<tr>"; 
            for(let j=0; j<5; j++){
                count++;
                if(count % 2 == 0){
                    table += "<td style='color:red'>"+count+"</td>";
                }else {
                    table += "<td style='color:blue'>"+count+"</td>";
                }
            }
            table += "</tr>";    
        }
        table += "</table>";

        document.write(table);

 
 
 

03. 중지,건너뛰기 문  

 

break문

코드 실행 중 break 문을 만나게 되면 현재 실행문을 중지시키고 다음 실행문으로 넘어가게 합니다.

 for(let i=1; i<20; i++){
    if(i == 10){
    break;
    }
    	document.write(i)   
   }
 
//1에서 부터 20까지 출력되지 않고 10까지 출력 됩니다.

 
 

continue문

continue 문은 특정 조건을 만족 했을 때 그 해당 값만 건너 뛸 수 있습니다. 

for(let i=1; i<20; i++){
    if(i == 10){
    continue;
    }
    document.write(i)   
    
// 1부터 20까지 출력되지만 10을 건너뛰고 출력 됩니다.
// result : 1,2,3,4,5,6,7,8,9,11,12,13,.....,20