발생일: 2012.10.31 문제: 매주 스택오버플로우의 뉴스레터를 받아 보고 있는데,지난 주 메일 중에 '클로저와 람다의 차이'에 대한 질문이 있었다. What is the difference between a closure and a lambda? 클로저는 익숙한데, 람다는 뭐지?많이 들어보긴 했는데 정확한 의미는 잘 모르겠다. 해결책: http://stackoverflow.com/questions/150129/what-is-a-lambda 언어마다 조금씩 다르지만,단순하게, 람다는 익명 함수! 하나 더. 난 클로저 개념을 한글로 배웠었는데,영어로 정의한 문장을 보니, 각 단어들이 더 의미를 잘 설명해주고 있는 것 같다. 클로저는 자신의 정의된 영역의 변수를 에워싸고(close over) 있는 것.또..
발생일: 2009.12.24 문제: 독립적인 기능을 하는 자바스크립트 클래스를 하나 만들었다. 이 클래스를 싱글턴으로 사용하고 싶다. 또한, 일반적인 getInstance() 라는 스태틱 메서드를 사용하는 대신, 바로 생성자를 호출해서 객체를 만들도록(내부적으로 싱글턴 인스턴스를 리턴) 하려고 한다. 어떻게 하면 자바스크립트에서 생성자만으로 싱글턴을 구현할 수 있을까? 해결책: 한참을 고민해봤다. 이런 방법으로 구현해보면 어떨까? 클래스의 생성자에 대한 유효범위를 제한해두고, 그 유효범위 안에서 window 속성의 클래스 생성자(래퍼)를 다시 정의한다. (일종의 프록시 패턴이라고 할 수도 있겠다) window 속성의 클래스 생성자에서는 클래스의 유일한 인스턴스를 만들어 리턴하도록 싱글턴을 구현한다. 즉,..