본문 바로가기
Front-end/Web

[JS] 자바스크립트 기초 4. 클래스 | 클래스 예제와 callback함수 정리

by 안녕주 2021. 8. 29.

클래스와 callback

'use strict';

class Counter{
    constructor(runEveryFiveTimes){
        this.counter = 0;
        this.callback = runEveryFiveTimes;

    }

    increase(){
        this.counter++;
        console.log(this.counter);
        if(this.counter % 5 === 0){
            this.callback && this.callback(this.counter);
            //위의 코드와 같음 
            // if (this.callback){
            //     this.callback(this.counter);
            // }
        }
    }

}

const coolCounter = new Counter();
coolCounter.increase();
coolCounter.increase();
coolCounter.increase();
coolCounter.increase();
coolCounter.increase();
coolCounter.increase();
coolCounter.increase();
coolCounter.increase();
coolCounter.increase();
coolCounter.increase();



function printSomething(num){
    console.log(`5의 배수 ${num}`);
}
function alertNum(num){
    alert(`wow! ${num}`);
}
//아래와 같이 할 경우 재사용이 더 쉽다 
const printCounter = new Counter(printSomething);
const alertCounter = new Counter(alertNum);

댓글