<div class="codetitle"> <span><a style="CURSOR: pointer" data="18783" class="copybut" id="copybut18783" onclick="doCopy('code18783')"><u>코드 복사</u></a></span> 코드는 다음과 같습니다.</div> <div class="codebody" id="code18783"> <br><script type="text/javascript"> <br> function Base(){} //루트 추상 클래스<br>Base.toBase=function(){ //객체를 Base 클래스의 인스턴스로 변환하는 방법<br>return new Base(); >} <br>Base.inherit=function(parent){ //Base 클래스의 인스턴스를 상속하는 방법 <br>var F=function(){} <br>F.prototype=parent <br>return new F; ; <br>} <br>Base.prototype.extend = function(prop){ //루트 추상 클래스 Base<br>의 확장 메서드 확장 for (var o in prop) { <br>this[o] = prop[o]; <br>} <br>} <br>Base.prototype.method = function(name, fn){ //루트 추상 클래스 Base <br>this[name] = fn; <br>return this; <br>} <br>var o=new Base(); //기본 인스턴스 생성<br>o.method("show",function(){ //객체 o에 표시 메서드 추가 <br>alert(" show function"); <br>}); <br>o.extend({ //name 속성을 추가하고 객체 o <br>name:"shupersha", <br>say :function(){ <br>alert("say function") <br>} <br>}); <br>var t=Base.inherit(o) //o 객체의 속성과 메서드 상속<br>t.show(); <br>t.say() <br></script></div>