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 相关文章推荐
javascript限制文本框只允许输入数字(曾经与现在的方法对比)
Jan 18 Javascript
js 获取input点选按钮的值的方法
Apr 14 Javascript
javascript操作select元素实例分析
Mar 27 Javascript
JavaScript实现为指定对象添加多个事件处理程序的方法
Apr 17 Javascript
原生js实现简单的Ripple按钮实例代码
Mar 24 Javascript
微信小程序 数据遍历的实现
Apr 05 Javascript
JS判断一个数是否是水仙花数
Jun 11 Javascript
layui table去掉右侧滑动条的实现方法
Sep 05 Javascript
Vue 实现从文件中获取文本信息的方法详解
Oct 16 Javascript
微信小程序手动添加收货地址省市区联动
May 18 Javascript
Node登录权限验证token验证实现的方法示例
May 25 Javascript
如何解决jQuery 和其他JS库的冲突
Jun 22 jQuery
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基于CURL进行POST数据上传实例
2014/11/10 PHP
PHP CodeIgniter框架的工作原理研究
2015/03/30 PHP
JQuery插件Style定制化方法的分析与比较
2012/05/03 Javascript
jQuery模拟超链接点击效果代码
2013/04/21 Javascript
最短的IE判断var ie=!-[1,]分析
2014/05/28 Javascript
JavaScript onkeydown事件入门实例(键盘某个按键被按下)
2014/10/17 Javascript
Javascript控制div属性动态变化实例分析
2015/10/08 Javascript
JavaScript数据类型学习笔记
2016/01/25 Javascript
浅谈Express异步进化史
2017/09/09 Javascript
vue实现验证码输入框组件
2017/12/14 Javascript
async/await地狱该如何避免详解
2018/05/10 Javascript
Js 利用正则表达式和replace函数获取string中所有被匹配到的文本(推荐)
2018/10/28 Javascript
详解vue-cli3多环境打包配置
2019/03/28 Javascript
JS中getElementsByClassName与classList兼容性问题解决方案分析
2019/08/07 Javascript
vue实现pdf文档在线预览功能
2019/11/26 Javascript
jQuery实现小火箭返回顶部特效
2020/02/03 jQuery
[01:00:49]DOTA2-DPC中国联赛 正赛 Ehome vs iG BO3 第二场 1月31日
2021/03/11 DOTA
python使用post提交数据到远程url的方法
2015/04/29 Python
利用Python脚本在Nginx和uwsgi上部署MoinMoin的教程
2015/05/05 Python
浅谈Python中列表生成式和生成器的区别
2015/08/03 Python
python监控键盘输入实例代码
2018/02/09 Python
基于scrapy的redis安装和配置方法
2018/06/13 Python
使用Python计算玩彩票赢钱概率
2019/06/26 Python
django 单表操作实例详解
2019/07/30 Python
Python中zip()函数的简单用法举例
2019/09/02 Python
使用Python获取当前工作目录和执行命令的位置
2020/03/09 Python
Python发送邮件封装实现过程详解
2020/05/09 Python
详解pandas.DataFrame.plot() 画图函数
2020/06/14 Python
Keras设置以及获取权重的实现
2020/06/19 Python
简单总结CSS3中视窗单位Viewport的常见用法
2016/02/04 HTML / CSS
一套Java笔试题
2016/08/20 面试题
extern是什么意思
2016/03/10 面试题
中专毕业自我鉴定
2013/10/16 职场文书
小学家长评语大全
2014/04/16 职场文书
小学老师对学生的评语
2014/12/29 职场文书
2015年清明节网上祭英烈活动总结
2015/03/26 职场文书