파란하늘의 지식창고
[JavaScript][source analysis] 클래스 상속
Study/JavaScript 2009. 4. 25. 18:07

자바스크립트에 메소드 오버로딩이 없는 것과 마찬가지로 클래스 상속 또한 없다. 하지만 구현은 가능하다. JSON의 창시자로, JavaScript The Good parts의 저자로 유명한 Douglas Crockford가 구현한 소스이다. 원글 : http://javascript.crockford.com/inheritance.html 이 소스의 분석을 시작하기 전에 먼저 말해야 할 것이 있다. 이 코드를 제안한 Crockford 마저 버린 소스라는 것이다. -ㅅ-;;; 프로토타입적이고 함수적인 JavaScript의 소스에서 클래스 상속을 구현하긴 했지만 실제로 자신조차 사용하질 않는다고 말미에 달아놓은 소스이다. 하지만 JavaScript를 공부하기엔 좋은 예제이다. 이 소스를 이해하게 되면 protot..

[JavaScript][source analysis] 메소드 오버로딩
Study/JavaScript 2009. 4. 16. 02:36

JavaScript는 메소드 오버로딩이 없다. 매개변수의 갯수나, 속성, 리턴값의 일치여부를 체크하지 않는다. 함수를 선언하고 해당 함수가 호출되기 전 동일 네임의 함수가 다시 선언되는 경우 그대로 덮어쓴다. 하지만 메소드 오버로딩의 구현은 가능하다. 이를 구현한 소스가 있다. 자바스크립트의 전도사로, jQuery의 개발자로 유명한 John Resig의 소스이다. 원글 : http://ejohn.org/blog/javascript-method-overloading 아래와 같다. // addMethod - By John Resig (MIT Licensed) function addMethod(object, name, fn){ var old = object[name]; object[name] = functio..