工厂模型抽象了创建具体对象的过程,以下示例代码说明工厂类型:
<!DOCTYPE html> <html> <head> <title>工厂模型</title> <script type="text/javascript"> //工厂模型-用函数封装以特定接口创建对象的细节 function createStudent(name,age,sex){//对象建造工厂函数 var o=new Object(); o.name=name; o.age=age; o.sex=sex; o.sayName=function(){ alert(this.name); }; return o; } var stu1=createStudent("Lucy",10,"girl"); var stu2=createStudent("Bob",9,"boy"); alert(stu1.sayName===stu2.sayName);//false //优点:解决创建多个相似对象问题 //缺点:未解决对象识别问题(即怎样知道一个对象的类型) </script> </head> <body> </body> </html>
部分摘自《JavaScript高级程序设计(第3版)》