基于JavaScript的面向对象可维护代码编写.docVIP

基于JavaScript的面向对象可维护代码编写.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于JavaScript的面向对象可维护代码编写.doc

基于JavaScript的面向对象可维护代码编写   摘要:从经典的面向对象编程基本知识入手,通过分析JavaScript面向对象的不同之处,对如何写出可维护的面向对象的JavaScript 代码进行了相关研究。   关键词:面向对象;JavaScript;类;继承;重用   中图分类号:TP319   文献标识码:A 文章编号:1672-7800(2014)003-0052-03   0 引言   能够写出可维护的面向对象的JavaScript 代码,不仅可以节约时间,还能享受重用代码的过程。对于每一位从事或即将从事JavaScript代码编写的人员来说,如何编写可重用的不过时的JavaScript 代码都将成为其追求的目标。在开始探究如何编写可维护的面向对象 JavaScript 代码之前,先要弄清楚什么是面向对象。   1 面向对象   面向对象编程主要通过代码代表现实世界中的实质对象。要创建对象,首先需要写一个“类”来定义。类几乎可以代表所有的东西:账户、员工、导航菜单、汽车、植物、广告、饮料等等。而每次要创建对象的时候,就要从类实例化一个对象。换句话说,就是创建类的实例做为对象。事实上,通常处理一个以上的同类事物就会使用到对象。另外,只需要简单的函数式程序就可以做的很好。对象实质上是数据的容器。因此在一个 employee 对象中,可能要储存员工号、姓名、入职日期、职称、工资、资历等等。对象也包括处理数据的函数(也叫做“方法”)。方法被用作媒介来确保数据的完整性,以及在储存之前对数据进行转换。例如,方法可以接收任意格式的日期,然后在储存之前将其转化成标准化格式。最后,类还可以继承其它类。继承可以在不同类中重复使用相同代码。例如,银行账户和音像店账户都可以继承一个基本的账户类,里面包括个人信息、开户日期、分部信息等。然后每个类都可以定义交易或者借款处理等数据结构和方法。   2 JavaScript 面向对象差异   上面概述了经典的面向对象编程的基本知识,说经典是因为 JavaScript 并不遵循这些规则,相反地,JavaScript 的类是写成函数的样子,而继承则是通过原型实现的。原型继承基本上意味着使用原型属性来实现对象的继承,而不是从类继承类。   2.1 对象实例化   以下是 JavaScript 中对象实例化的例子:〖HT5〗   // 定义 Employee 类   function Employee (num, fname, lname) {   this.getFullName = function () {   return fname + + lname;   }   };   // 实例化 Employee 对象   var john = new Employee (4815162342, John, Doe);   alert (The employees full name is + john.getFullName ());   在这里,有3个重点需要注意:   (1)“class”函数名的第一个字母要大写。这表明该函数的目的是被实例化而不是像一般函数一样被调用。   (2)在实例化的时候使用了 new 操作符。如果省略掉 new 而仅仅调用函数则会产生很多问题。   (3)因为 getFullName 指定给了this操作符,所以是公共可用的,但是 fname 和 lname 则不是。由 Employee 函数产生的闭包给了 getFullName 到 fname 和 lname 的入口,但同时对于其它类仍然是私有的。   2.2 原型继承   下面是 JavaScript 中原型继承的例子:   // 定义 Human 类   function Human () {   this.setName = function (fname, lname) {   this.fname = fname;   this.lname = lname;   }   this.getFullName = function () {   return this.fname + + this.lname;   }   }   // 定义 Employee 类   function Employee (num) {   this.getNum = function () {   return num;   }   };   //让 Employee 继承 Human 类   Etotype = new Human ();   // 实例化 Employee 对象   var john = new

您可能关注的文档

文档评论(0)

lmother_lt + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档