본문 바로가기
🌌 | WEB DEV/Vanilla JS

JS_기본문법 (4)_반복문

by KASSID 2022. 2. 11.

목차

    728x90

    반복문

     

    for문

    for (let index = 0; index < array.length; index++) {
        ....
    }

    초기문, 조건문, 증감문 순으로 적어준다.


    배열 in for문

    반복문에서 배열을 다루는 방법은 파이썬과 크게 다르지 않다.

     

    .length를 이용해서 해당 배열의 길이를 반환받고

    조건부분에 넣어준다.

    1. 

    const product = ['Bread', 'Kiwi', 'Soap'];
    
    for (let i = 0; i < product.length; i++) {
        console.log(product[i]); 
    }

     

     

    2. for ~ of

    of를 이용해서

    배열을 바로 반복문으로 만들 수 있다.

    (파이썬과 동일)

    for (let item of product){
        console.log(item);
    }
    
    >>>
    Bread
    Kiwi
    Soap

    객체 in for문

    1. 메서드이용

    파이썬의 dict에서

    .items(), keys(), values() 처럼

     

    JS에서는 객체에

    .entries(), keys(), values()로 값을 받아올 수 있다.

    하지만 사용법이 조금 다르다!!

     

    Object.메서드(해당 객체) 로 입력해야한다.

    Object.entries(...)
    Object.keys(...)
    Object.values(...)

     

    const Bread = {
        name : "Scone",
        price : 2500,
        calories : 200,
        show : function(){
            console.log(this.name,"|", this.price,"|", this.calories)
        }
    }
    
    console.log(Object.entries(Bread))
    console.log(Object.keys(Bread))
    console.log(Object.values(Bread))
    
    
    >>>
    [
      [ 'name', 'Scone' ],
      [ 'price', 2500 ],
      [ 'calories', 200 ],
      [ 'show', [Function: show] ] //메서드의 경우 다음과 같이 출력이 된다.
    ]
    [ 'name', 'price', 'calories', 'show' ]
    [ 'Scone', 2500, 200, [Function: show] ]

    각각은 모두 리스트의 형태로 반환을 한다.

     

    2. for ~ in

    const Bread = {
        name : "Scone",
        price : 2500,
        calories : 200,
        show : function(){
            console.log(this.name,"|", this.price,"|", this.calories)
        }
    }
    for (let i in Bread) {
        console.log(i);
    }
    for (let i in Bread) {
        console.log(Bread[i]); // 객체[key] = value
    }
    
    >>>
    name
    price
    calories
    show
    Scone
    2500
    200
    [Function: show]

    while문

    let i = 0;
    while (i < 5) {
        console.log(i++);
    }

     

    for (let i = 0; i < 5; i++) {
        if (i === 2) {
            continue;
        }
        if (i == 4) {
            break;
        }
        console.log(i);
    }
    
    >>>
    0
    1
    3
    //2 건너뛰고, 4일 때 반복문탈출

     

    댓글