赛迪网 > IT技术 Java > 技术动态
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

JavaScript中最流行的2种定义类的方式

发布时间:2007.12.26 07:35     来源:赛迪网    作者:jorwen

其它方式:工厂方式,构造函数方式,原型方式都各有各的大缺陷,这里就不一一介绍了,想了解的可以去看一下这本著作的第3章节。

1. 混合构造函数/原型方式 

  1. function  Car(sColor, iDoors, iMpg) {
  2.    this .color  =  sColor;
  3.    this .doors  =  iDoors;
  4.    this .mpg  =  iMpg;
  5.    this .drivers  =   new  Array(“Mike”, “Sue”);
  6. }
  7. Car.prototype.showColor  =   function  () {
  8.   alert( this .color);
  9. };
  10. var  oCar1  =   new  Car(“red”,  4 ,  23 );
  11. var  oCar2  =   new  Car(“blue”,  3 ,  25 );
  12. oCar1.drivers.push(“Matt”);
  13. alert(oCar1.drivers);  // outputs “Mike,Sue,Matt” 
  14. alert(oCar2.drivers);  // outputs “Mike,Sue”
 

优点:具有其它方式的优点而没有其它方式的缺点
不足:封装性欠缺

2 . 动态原型方式 
  1.   function  Car(sColor, iDoors, iMpg)   {
  2.    this .color  =  sColor;
  3.    this .doors  =  iDoors;
  4.    this .mpg  =  iMpg;
  5.    this .drivers  =   new  Array(“Mike”, “Sue”);
  6.    if  ( typeof  Car._initialized  ==  “undefined”)   {
  7.     Car.prototype.showColor  =   function  ()   {
  8.       alert( this .color);
  9.     } ;
  10.     Car._initialized  =   true ;
  11.   } 


优点:封装性比上一个方式更好
不足:就是看上去奇怪一点,呵呵 

总之,以上2种方式是目前最广泛使用的,尽量使用它们避免不必要的问题。 
    (责任编辑:包春林)


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· J2EE基础:J2EE开发之常用开源项目介绍 (12-25) · Java入门:深入讨论正则表达式快速入门 (12-25)
· 高级:Struts彻底实践中文问题的解决方法 (12-25) · 数据库相关:全新的数据持久层解决方案 (12-25)
· 如何在MyEclipse快速搭建Hibernate应用 (12-25) · Java语言深入:java匿名内部类的一点讨论 (12-25)
· 进阶:Composite模式及其在JSF中的应用 (12-25) · JSP/Servlet/JSF:JavaEE 不再需要 Ajax (12-25)
· 开发框架:深入了解 Struts Validator (12-25) · J2SE综合:如何在Java中实现条件编译 (12-25)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
· 电子商务行业规范出台 电子商务发展目标与规划
· 中小企业网站存在盲目性 消费习惯需重点培养
· 天灾中信息化显力量 CIO如何应对新领导IT改革
· 河南网通数据中心工程 网御神州VPN解决方案
  IT博客 ·曾剑秋·项立刚·Java学习·网管
  IT技术论坛 ·开发·网管·安全·数据库·系统