在上一篇的构造函数模式中我们知道,我们每次new一个构造函数的时候里面的私有变量只能由当前这个实例进行修改,如果我们有这样一种需求,我们需要每一个实例都能共享一些私有变量,这个时候我们推出静态私有变量这个模式
(function(){ //建议先定义私有变量 var name=10; //下面这种方式在严格模式下会导致错误,在非严格模式下,Person是全局的 Person=function(value){ name=value; } //增加代码复用 Person.prototype.getName=function(){ return name; } Person.prototype.setName=function(value){ name=value; } })(); var person1=new Person("林丽君"); console.log(person1.getName());//林丽君 var person2=new Person("张俊祺"); console.log(person2.getName());//张俊祺 person2.setName("老好人"); console.log(person1.getName());//老好人(注意哦,这里的person1的名字被person2修改了哦)