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 相关文章推荐
html组件不可输入(只读)同时任何组件都有效
Apr 01 Javascript
实现动画效果核心方式的js代码
Sep 27 Javascript
基于Jquery实现键盘按键监听
May 11 Javascript
jQuery中insertBefore()方法用法实例
Jan 08 Javascript
浅析JavaScript事件和方法
Feb 28 Javascript
js实现跨域的方法实例详解
Jun 24 Javascript
JS实现霓虹灯文字效果的方法
Aug 06 Javascript
浅谈JavaScript中面向对象的的深拷贝和浅拷贝
Aug 01 Javascript
浅谈JavaScript的闭包函数
Dec 08 Javascript
微信小程序 Tab页切换更新数据
Jan 05 Javascript
详解vue-cli脚手架中webpack配置方法
Aug 22 Javascript
vue-router源码之history类的浅析
May 21 Javascript
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
Discuz 5.0 中读取纯真IP数据库函数分析
2007/03/16 PHP
php站内搜索关键词变亮的实现方法
2014/12/30 PHP
PHP file_get_contents函数读取远程数据超时的解决方法
2015/05/13 PHP
浅谈PHP中foreach/in_array的使用
2015/11/02 PHP
不使用中间变量,交换int型的 a, b两个变量的值。
2010/10/29 Javascript
点弹代码 点击页面任何位置都可以弹出页面效果代码
2012/09/17 Javascript
javascript:;与javascript:void(0)使用介绍
2013/06/05 Javascript
JS验证邮箱格式是否正确的代码
2013/12/05 Javascript
jquery如何扑捉回车键触发的事件
2014/04/24 Javascript
jquery分析文本里url或邮件地址为真实链接的方法
2015/06/20 Javascript
js删除Array数组中指定元素的两种方法
2016/08/03 Javascript
JS使用正则截取两个字符串之间的字符串实现方法详解
2017/01/06 Javascript
vuejs2.0实现一个简单的分页示例
2017/02/22 Javascript
js中Number数字数值运算后值不对的解决方法
2017/02/28 Javascript
JS正则获取HTML元素的方法
2017/03/31 Javascript
js学习心得_一个简单的动画库封装tween.js
2017/07/14 Javascript
jQuery滑动效果实现方法分析
2018/09/05 jQuery
微信小程序后端无法保持session的原因及解决办法问题
2020/03/20 Javascript
vue实现登录功能
2020/12/31 Vue.js
[07:38]2014DOTA2国际邀请赛 Newbee顺利挺进胜者组赛后专访
2014/07/15 DOTA
python ip正则式
2009/05/07 Python
用Python创建声明性迷你语言的教程
2015/04/13 Python
浅析Python中的多重继承
2015/04/28 Python
Python基于动态规划算法计算单词距离
2015/07/25 Python
Python 40行代码实现人脸识别功能
2017/04/02 Python
Python Numpy数组扩展repeat和tile使用实例解析
2019/12/09 Python
两种CSS3伪类选择器详细介绍
2013/12/24 HTML / CSS
资深地理教师自我评价
2013/09/21 职场文书
中文专业学生自我评价范文
2014/02/06 职场文书
财务科科长岗位职责
2014/03/10 职场文书
毕业生求职信
2014/06/10 职场文书
交通违章检讨书
2014/09/21 职场文书
英文版辞职信
2015/02/28 职场文书
2015年乡镇卫生院妇幼保健工作总结
2015/05/19 职场文书
入党介绍人意见怎么写
2015/06/03 职场文书
《游戏王:大师决斗》新活动上线 若无符合卡组可免费租用
2022/04/13 其他游戏