// create the HelloWorld application (single instance) var HelloWorld = function(){ // everything in this space is private and only accessible in the HelloWorld block //任何在这个区域的都是私有变量 ,只能在HelloWorld访问 var dialog, showBtn;
var toggleTheme = function(){ getEl(document.body, true).toggleClass('ytheme-gray'); }; // return a public interface return { init : function(){ showBtn = getEl('goNextBtn'); //绑定一个按钮 // attach to click event 加入事件 /showBtn.on('click', this.showDialog, this, true);
var singleton = new Singleton(); alert(__typeof__(singleton)); alert(singleton.GetValue()); alert(singleton.GetValue()); singleton.SetValue(1000000); var singleton = new Singleton(); alert(singleton.GetValue()); alert(singleton.GetValue());
//SingletonFactory implementions function getInstance(){ if(SingletonObject.instance == null) return new SingletonObject(); else return SingletonObject.instance; } })();
var instA = null; try { alert("试图通过new SingletonObject()构造实例!"); instA = new SingletonObject(); } catch(e){alert("SingletonObject构造函数不能从外部访问,系统抛出了异常!");}
instA = SingletonFactory.getInstance(); //通过Factory上定义的静态方法获得 var instB = SingletonFactory.getInstance(); instA.methodA(); instB.methodA();
alert(instA == instB); //成功
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn