javaScript设计模式---(单例模式学习)
生活随笔
收集整理的這篇文章主要介紹了
javaScript设计模式---(单例模式学习)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
單例模式
一個類只能有一個實例化對象。如頁面中的彈出框蒙層,一個頁面只需要一個。
實現方式:創建一個類,這個類包含一個方法,這個方法在沒有對象存在的情況下,將會創建一個新的實例對象。如果對象存在,這個對象只是返回這個對象的引用。
var singleton = (function singleton () {var instance = null; // 存儲單例實例的引用// 創建單例function init () {
// 私有方法和屬性function privateMethod () {console.log('this is a private method!')}var privateVariable = 'I am a private variable!'return {
// 公有方法和屬性publicMethod: function () {console.log('public')},getPrivateVariable: function () {return privateVariable}}}return {getInstance: function () {if (!instance) {instance = init();}return instance;}} })();
?此方法不夠抽象,假如我們需要創建單例函數發生變化呢?所以我們進一步抽象函數
var singleton = function (fn) {var instance = null;return function () {return instance || fn.call(this, arguments)} }?
轉載于:https://www.cnblogs.com/running1/p/7523380.html
總結
以上是生活随笔為你收集整理的javaScript设计模式---(单例模式学习)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《结对-结对编项目作业名称-开发环境搭建
- 下一篇: 步步为营-89-SQL语句(删除重复数据