js简单工厂模式用法实例


Posted in Javascript onJune 30, 2015

本文实例讲述了js简单工厂模式用法。分享给大家供大家参考。具体实现方法如下:

<!DOCTYPE html>
<html>
<head>
<title>简单工厂模式</title>
</head>
<body>
<script>
  //简单工厂模式
  var BicycleShop = function(){};
  BicycleShop.prototype ={
    sellBicycle : function(model){
      var bicycle = null;
      switch(model){
        case 'The Speedster':
          bicycle = new Speedster();
          break;
        case 'The lowride':
          bicycle = new Lowride();
          break;
        case 'The Comfort Cruise':
          bicycle = new ComfortCruise();
          break;
      };
      Interface.ensureImplements(bicycle,Bicycle);
      bicycle.assemble();
      bicycle.wash();
      return bicycle;
    }
  };
  var AcmeBicycleShop = function(){};
  extent(AcmeBicycleShop, BicycleShop);
  AcmeBicycleShop.prototype.createBicycle = function(model){
    var bicycle = null;
    switch(model){
      case 'The speedster':
        bicycle = new AcmeSpeedster();
        break;
      case 'The Lowrider':
        bicycle = new AcmeLowrider();
        break;
      case 'The Flatlander':
        bicycle = new AcmeFlatlander();
        break;
      case 'The Comfort Cruiser':
      default :
        bicycle = new AcmeComfortCruiser();
    };
    Interface.ensureImplements(bicycle,Bicycle);
    return bicycle;
  };
  //工厂模式适用与一个 fn 根据参数不同,创建不同的对象
</script>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
分页栏的web标准实现
Nov 01 Javascript
理解JavaScript中Promise的使用
Jan 18 Javascript
jQuery 弹出层插件(推荐)
May 24 Javascript
javascript中sort排序实例详解
Jul 24 Javascript
JS实现一个简单的日历
Feb 22 Javascript
基于DOM节点删除之empty和remove的区别(详解)
Sep 11 Javascript
seajs实现强制刷新本地缓存的方法分析
Oct 16 Javascript
js console.log打印对象时属性缺失的解决方法
May 23 Javascript
通过实践编写优雅的JavaScript代码
May 30 Javascript
javascript使用链接跨域下载图片
Nov 01 Javascript
解决vue项目F5刷新mounted里的函数不执行问题
Nov 05 Javascript
Vue用mixin合并重复代码的实现
Nov 27 Vue.js
JavaScript判断undefined类型的正确方法
Jun 30 #Javascript
超赞的动手创建JavaScript框架的详细教程
Jun 30 #Javascript
JavaScript中Null与Undefined的区别解析
Jun 30 #Javascript
jQuery结合AJAX之在页面滚动时从服务器加载数据
Jun 30 #Javascript
深入探究使JavaScript动画流畅的一些方法
Jun 30 #Javascript
使用jQuery在对象中缓存选择器的简单方法
Jun 30 #Javascript
在Node.js应用中读写Redis数据库的简单方法
Jun 30 #Javascript
You might like
php 伪静态之IIS篇
2014/06/02 PHP
php中curl使用指南
2015/02/05 PHP
safari下载文件自动加了html后缀问题
2018/11/09 PHP
PHP 构造函数和析构函数原理与用法分析
2020/04/21 PHP
基于jQuery图片平滑连续滚动插件
2009/04/27 Javascript
Javascript全局变量var与不var的区别深入解析
2013/12/09 Javascript
js 3秒后跳转页面的实现代码
2014/03/10 Javascript
js函数模拟显示桌面.scf程序示例
2014/04/20 Javascript
js实现对table动态添加、删除和更新的方法
2015/02/10 Javascript
node-http-proxy修改响应结果实例代码
2016/06/06 Javascript
js实现String.Fomat的实例代码
2016/09/02 Javascript
AngularJS解决ng界面长表达式(ui-set)的方法分析
2016/11/07 Javascript
js上下视差滚动简单实现代码
2017/03/07 Javascript
JS实现HTML页面中动态显示当前时间完整示例
2018/07/30 Javascript
Vue官方推荐AJAX组件axios.js使用方法详解与API
2018/10/09 Javascript
nodejs中用npm初始化来创建package.json的实例讲解
2018/10/10 NodeJs
JavaScript JMap类定义与使用方法示例
2019/01/22 Javascript
微信小程序如何实现精确的日期时间选择器
2020/01/21 Javascript
[01:57]DOTA2上海特锦赛小组赛解说单车采访花絮
2016/02/27 DOTA
Python中集合类型(set)学习小结
2015/01/28 Python
Python批量重命名同一文件夹下文件的方法
2015/05/25 Python
Python保存MongoDB上的文件到本地的方法
2016/03/16 Python
Python编程实现的简单Web服务器示例
2017/06/22 Python
Python使用matplotlib实现基础绘图功能示例
2018/07/03 Python
如何使用pyinstaller打包32位的exe程序
2019/05/26 Python
在Python中使用MySQL--PyMySQL的基本使用方法
2019/11/19 Python
Allsole美国/加拿大:英国一家专门出售品牌鞋子的网站
2018/10/21 全球购物
餐厅筹备计划书
2014/04/25 职场文书
低碳环保口号
2014/06/12 职场文书
计算机相关专业自荐信
2014/07/02 职场文书
村委会贫困证明范本
2014/09/17 职场文书
卫校毕业生自我鉴定
2014/09/28 职场文书
财务会计求职信范文
2015/03/20 职场文书
售后前台接待岗位职责
2015/04/03 职场文书
消防宣传语大全
2015/07/13 职场文书
Python实现排序方法常见的四种
2021/07/15 Python