单例是一种设计模式,一种通俗的设计思想,指一个类只能有一个对象。放在js中就指一个函数对象只能有一个实例。
function a(){
if(a.c!==undefined){
return a.c;
}
this.b=1;
a.c=this;
}
var m=new a ();
var n=new a();
console.log(m===n);//true
第一次new 函数对象a的时候,在函数对象中存入一个属性c,这个属性C的值就是这次new的对象,通过this将他存入。下次new对象的时候,判断c属性中是否有值,如果有值
那么直接返回这个值也就是第一次new的对象。