5.1 定义
单例模式singleton 是一个用来划分命名空间的并将一批属性和方法组织在一起的对象,如果它能被实例化,只能被实例化一次。
作用
1.在js中,单例模式可用于创建命名空间,清除全局变量。
2.在分支branching技术中,用来封装浏览器之间的差异(版本兼容)。
5.1 基本结构
最简单的一种结构是: 一个对象字面量。或者说:对象字面量只是创建单体的方法之一
5.2 划分命名空间
单体对象由 1.包含方法和属性的对象obj 2.用于访问它obj的变量 组成。
5.4 拥有私有成员的单体
5.4.1 使用下划线表示法 (这只是一种约定)
内容:略
5.4.2 使用闭包
立即运行函数创造闭包,包裹私有变量和返回公有变量。 又称模块模式。
5.5 惰性加载 lazy loading
// 代码框架
var singletonName= (function(){
var instance;
...
function contructor(){
...
}
return {
getInstance:function(){
if(instance){
instance=constrcutor();
}
return instance;
}
}
})();
singletonName.getInstance.methodName();//调用方法的写法
5.6 分支
内容:略
5.7 使用分支技术创建XHR对象
内容:略
5.8 使用场合
内容:略
5.9 单例模式之利
内容:略
5.10 单例模式之利
内容:略