본문 바로가기

JavaScript/JS-Tip

생성자 함수 - 강제 인스턴스 생성 , new 키워드 빠짐 방지 방법

생성자 함수 사용시, new 키워드를 빼먹은 것을 방지하기 위한 코드

 

function A(arg){
    // if (!(this instanceof A))
    if(!(this instanceof arguments.callee))
    return new A(arg);
    this.value = arg ? arg : 0;
}

var a = new A(100);
var b = A(10);
// forgot new keyword

console.log(a.value);
console.log(b.value);
console.log(window.value);

 

감사합니다.