본문 바로가기
Frontend

Javascript 싱글톤 패턴

by 구라미 2020. 1. 21.

 

 

Javascript 싱글톤 패턴

싱글톤 패턴은 App상에서 단 하나의 인스턴스만 필요할 경우 사용한다. 인스턴스를 메모리 영역상 하나만 존재하게 하여 사용할 수 있는 패턴이다.

- 클래스 함수의 한개의 인스턴스만 유지한다.

- 여러 객체를 생성해도 최초 생성된 객체를 사용하는 것이다.

- 객체에 대한 접근자(비공개 멤버: 클로저)를 사용하여 객체를 공유한다.

 

예시 코드

var Singleton = (function () {
        // instance stores a reference to the Singleton
        var instance;
    
        function createInstance() {
            // private 변수와 메소드
            // private 변수
            var _privateVariable = 'I am a private variable';
            // private 메소드
            function _privateMethod() {
                console.log('I am a private method');
            }

            return {
                // public 변수와 베소드
                // public 메소드
                publicMethod: function() {
                    console.log('I am a public method');
                },
                // public 변수
                publicVariable: 'I am a public variable'
            };
        }
         
        return {
            // Get the Singleton instance if it exists
            // or create one if doesn't
            getInstance: function () {
                if (!instance) {
                    instance = createInstance();
                }
                //인스턴스 리턴
                return instance;
            }
        };
    })();

 

첫번째 객체가 생성된 후 객체를 호출할 때마다 동일한 객체에 대한 참조를 리턴한다.

 

 

 

 

 

'Frontend' 카테고리의 다른 글

Redux 설치  (0) 2020.01.28
VSCode Emmet & Fira Code 설정  (0) 2020.01.26
Typescript | Typescript가 대체 뭐야??  (0) 2020.01.20
Axios에 대해서  (0) 2020.01.16
Vue | Vue 개발환경 설정  (0) 2019.12.18

댓글