-1

모듈 패턴 (또는) 프로토 타입 패턴Javascript로 객체를 생성 할 때 따라야 할 디자인 패턴은 무엇입니까?

사용 사례 : 여러 개의 객체를 생성해야하지만, 기본 클래스는, 내가 대신 프로토 타입과 일반 전역 함수와 모듈 패턴을 사용할 수있는 파생 클래스를 얻을 수 없습니다.

코드 1 : 예

(모듈 패턴)

var globals = { 
    method1 : function(){ 
     console.log("global method"); 
    } 
} 
function closureModule(){ 
    obj = {}; 
    obj.commonMethod = globals.method1; 
    function pvtMethod(){ 
     console.log("private"); 
    } 
    obj.privateMethod = pvtMethod 
    return obj; 
} 
var o1 = closureModule(); 
var o2 = closureModule(); 
. 
. 
. 
. 
var o100 = closureModule(); 

코드 2 : (원형 패턴)

function base(key){ 
    this.KEY = key; 
} 

base.prototype.commonMethod = function(){ 
    console.log("common Method", this); 
} 

var o1 = new base("0"); 
var o2 = new base("1"); 
. 
. 
. 
. 
var o100 = new base("100"); 
+0

팩터 리 주위 및 생성자 + 프로토 타입 둘 다에서 (드러내는) 모듈 패턴을 사용할 수 있습니다. 모듈화는 코드 조직에 적합합니다. 객체 생성시 사용하는 방식은 전적으로 의견 기반입니다. – Bergi

+0

예를 들어 공개 모듈 패턴과 관련된 링크를 공유하십시오. – Deepaklal

+0

[즐겨 찾는 검색 엔진] (https://stackoverflow.com/search?q=revealing+module+pattern)에서 해당 단어를 클릭 할 수 있습니까? – Bergi

답변

0

모듈 패턴에 의해 적절한 밀봉을 적용하는 것이 가장 유용 내부 구현 세부 사항을 숨 깁니다.

동일한 "클래스"의 여러 인스턴스가 공용 함수를 공유하도록하려는 경우 prototype을 사용하는 것이 올바른 방법입니다.