More actions
imported>qa22ahj No edit summary |
imported>bluemir No edit summary |
||
| Line 2: | Line 2: | ||
Javascript에서 클래스를 묘사하기 위한 방안. | Javascript에서 클래스를 묘사하기 위한 방안. | ||
마음대로 가져가면 가만 안둠. | ~~마음대로 가져가면 가만 안둠.~~ MIT라이선스 입니다. | ||
---- | ---- | ||
== 소스코드 == | == 소스코드 == | ||
Revision as of 03:44, 13 March 2015
개요
Javascript에서 클래스를 묘사하기 위한 방안.
~~마음대로 가져가면 가만 안둠.~~ MIT라이선스 입니다.
소스코드
/**
* @author Blue Mir
* @email qa22ahj@naver.com
*/
Function.prototype.extend = function(superclass)
{
if(this.prototype.superclass)
throw new SyntaxError("이미 superclass를 가지고 있습니다.");
var proto = new superclass();
for(var p in proto)
{
if(proto.hasOwnProperty(p)) delete proto[p];
}
proto.constructor = this;
proto.superclass = superclass;
this.prototype = proto;
return this;
};
Function.prototype.implement = function()
{
for(var i = 0; i < arguments.length; i++)
{
var implementClass = arguments[i];
for(var p in implementClass.prototype)
{
var fn = implementClass.prototype[p];
if(typeof fn == "function")
{
this.prototype[p] = fn;
}
}
}
return this;
};