클래스 예제와 콜백함수
class Counter{
constructor(runEveryFiveTimes){
this.counter = 0;
this.callback = runEveryFiveTimes;
}
increase(){
this.counter++;
console.log(this.counter);
if(fhis.counter % 5 === 0 ){
this.callback && this.callback(this.counter);
}
}
}
// class에 모든것을 정의하면 컨트롤하기 힘들고, 재사용이 힘들다.
// 콜백함수를 이용해서 만들게되면 쓰는 사람이 자신이 원하는대로 코드를 변경 할 수 있게됨
// -> 클레스의 재사용성이 높아짐
function printSomething(num){
console.log(`yo!,${num}`);
}
function alertNum(num){
alert(`Wow!,${num}`);
}
const collCounter = new Counter();
const printSomething = new Counter(printSomething);
const alertNum = new Counter(alertNum);
coolCounter.increase(); // 1
coolCounter.increase(); // 2
coolCounter.increase(); // 3
coolCounter.increase(); // 4
coolCounter.increase(); // yo!
Last updated
Was this helpful?