对于初学者有效的JavaScript设计模式(2)
二、 构造模式
利用prototype 来构造自己的函数。
1 function Car(model,year,miles){ 2 this.model = model; 3 this.year = year; 4 this.miles = miles; 5 } 6 Car.prototype.toString = function(){ 7 return this.model + " has done " + this.miles + " miles"; 8 }; 9 var civic = new Car("Honda Civic",2009,20000); 10 var mondeo = new Car("Ford Mondeo",2010,5000); 11 12 console.log(civic.toString());
结果: Honda Civic has done 20000 miles
一个简单的toString()方法将在所有的Car 对象之间共用。
善用构造函数,用来简单的区分它们与其他的函数
三、 单体模式
在传统的软件工程中,通过创建有一个方法的类来创建类的实例,实现单体模式。使用JavaScript,单体作为一个命名空间提供与全局命名空间隔离的实现代码,从而提供一个功能单一的访问点。
在JS中最简单的一种形式就是——一个对象直接量与它相关的方法和属性。如下:
如果你想进一步的扩展,你可以通过封闭变量和函数增加自己的私有成员和方法。只暴露那些你想公有的部分。例如: