이 글에서는 주로 JavaScript 디자인 패턴의 싱글톤 모드를 소개합니다. 싱글톤 모드는 정적 액세스에서 인스턴스화된 객체입니다. 이 객체는 이미 인스턴스화되었거나 인스턴스화될 고유한 입구를 통해서만 액세스할 수 있습니다. 변화의 도움이 필요한 친구들이 참고할 수 있습니다.
싱글피스 모드 설명
1. 설명: 싱글피스 모드는 정적 액세스에서 인스턴스화된 객체입니다. , 이 개체는 Java, .Net C# 및 기타 서버 측 동적 언어와 같은 개체 지향 언어인 인스턴스화된 개체인 고유한 입구를 통해서만 액세스할 수 있습니다. 클래스 작업이 원활하게 진행되고 병렬 처리가 발생할 수 있습니다.
2. 싱글톤 모드의 이점:
1) 빈번한 메모리 작업 속도를 높이고 점유를 방지하기 위해 새로운 작업을 줄입니다. 메모리
2) , 대규모 시스템에서 개체의 오버헤드를 최소화합니다.
3) 위에서 언급한 것처럼 특정 유형의 작업이 병렬 처리로 인한 데이터 이상을 방지하기 위해 정확한 순서로 수행되도록 할 수 있습니다. 🎜>
인스턴스 소스 코드
var Singleton = { instance: null, MailSender: function() { var self = this; self.to = ''; self.title = ''; self.content = ''; self.send = function() { //send body } }, getInstance : function() { if (this.instance == null) { this.instance = new Singleton.MailSender(); } return this.instance; } }
사용법:
var mail = Singleton.getInstance(); mail.to = 'toname#mail.com'; mail.title = '单件模式发送'; mail.content = '发送内容'; mail.send();
Singleton.getInstance().to = 'toname#mail.com'; Singleton.getInstance().title = '单件模式发送'; Singleton.getInstance().content = '发送内容'; Singleton.getInstance().send();
기타 실용적인 설명
어디 싱글톤 모드가 더 유용합니까? 예를 들어, 대규모 동시 작업 등 운영 서버에 통일된 구성 파일이 있는 경우, 거래소의 운영 프로세스 기록 등 선착순 상황에 주의를 기울여야 하는 경우 등이 있습니다. , 단일 모드를 사용하여 작동할 수 있습니다. 추가: 단일 모드 방법: 1. 위 방법을 게으른 방법이라고 합니다2. 메소드:var Singleton = { instance : new Singleton.MailSender(), MailSender : function() { var self = this; self.to = ''; self.title = ''; self.content = ''; self.send = function() { //send body } }, getInstance : function() { return this.instance; } }
var Singleton = (function() { var instance = null; function MailSender() { this.to = ''; this.title = ''; this.content = ''; } MailSender.prototype.send = function() { //send body } return { getInstance : function() { if (instance == null) { instance = new MailSender(); } return instance; } } })();
2. 사용법:
//一样用法 var mail = Singleton.getInstance(); mail.to = 'toname#mail.com'; mail.title = '闭包式 单件模式发送'; mail.content = '发送内容'; mail.send();
JavaScript 비디오 튜토리얼을 방문하세요.