使用面向对象的技术创建高级-web-应用程序

使用面向对象的技术创建高级-web-应用程序

ID:25740050

大小:105.99 KB

页数:23页

时间:2018-11-22

使用面向对象的技术创建高级-web-应用程序_第1页
使用面向对象的技术创建高级-web-应用程序_第2页
使用面向对象的技术创建高级-web-应用程序_第3页
使用面向对象的技术创建高级-web-应用程序_第4页
使用面向对象的技术创建高级-web-应用程序_第5页
资源描述:

《使用面向对象的技术创建高级-web-应用程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、使用面向对象的技术创建高级Web应用程序RayDjajadinata本文讨论:§JavaScript是基于原型的语言§用JavaScript进行面向对象的编程§JavaScript编码技巧§JavaScript的未来本文使用了以下技术:JavaScript目录JavaScript对象是词典JavaScript函数是最棒的构造函数而不是类原型静态属性和方法闭包模拟私有属性从类继承模拟命名空间应当这样编写JavaScript代码吗?展望最近,我面试了一个有五年Web应用程序开发经验的软件开发人员。四年半来她一直在从事JavaScript

2、相关的工作,她自认为JavaScript技能非常好,但在不久之后我就发现实际上她对JavaScript知之甚少。话虽这样说,但我确实没有责备她的意思。JavaScript真的是很有趣。很多人(包括我自己,直到最近!)都认为自己很擅长JavaScript语言,因为他们都知道C/C++/C#,或者有一些以前的编程经验。在某种程度上,这种假设并不是完全没有根据的。用JavaScript很容易做些简单的事情。入门的门槛很低,该语言很宽松,它不需要您知道很多细节就可以开始用它进行编码。甚至非编程人员也可能用它在几个小时内为主页编写一些有用的脚

3、本。的确,直到最近,仅仅凭借MSDN®DHTML参考资料和我的C++/C#经验,我也总能勉强利用这点JavaScript知识完成一些任务。只是当我开始编写真实的AJAX应用程序时,我才意识到实际上我的JavaScript知识还非常不够。这个新一代的Web应用程序的复杂性和交互性需要程序员以完全不同的方法来编写JavaScript代码。它们是真正的JavaScript应用程序!我们在编写一次性脚本时一直采用的方法已完全不再有效。面向对象编程(OOP)是一种流行的编程方法,很多JavaScript库中都使用这种方法,以便更好地管理和维护

4、基本代码。JavaScript支持OOP,但与诸如C++、C#或VisualBasic®等流行的Microsoft®.NETFramework兼容语言相比,它支持OOP的方式非常不同,因此主要使用这些语言的开发人员开始可能会觉得在JavaScript中使用OOP很奇怪而且不直观。我写本文就是为了深入讨论JavaScript语言实际上如何支持面向对象编程,以及您如何使用这一支持在JavaScript中高效地进行面向对象开发。下面首先讨论对象(还能先讨论其他别的什么呢?)。JavaScript对象是词典在C++或C#中,在谈论对象时,是

5、指类或结构的实例。对象有不同的属性和方法,具体取决于将它们实例化的模板(即类)。而JavaScript对象却不是这样。在JavaScript中,对象只是一组名称/值对,就是说,将JavaScript对象视为包含字符串关键字的词典。我们可以使用熟悉的“.”(点)运算符或“[]”运算符,来获得和设置对象的属性,这是在处理词典时通常采用的方法。以下代码段复制代码varuserObject=newObject();userObject.lastLoginTime=newDate();alert(userObject.lastLoginTim

6、e);的功能与下面的代码段完全相同:复制代码varuserObject={};//equivalenttonewObject()userObject[“lastLoginTime”]=newDate();alert(userObject[“lastLoginTime”]);我们还可以直接在userObject的定义中定义lastLoginTime属性,如下所示:复制代码varuserObject={“lastLoginTime”:newDate()};alert(userObject.lastLoginTime);注意,它与C#3.

7、0对象初始值非常相似。而且,熟悉Python的人会发现在第二和第三个代码段中实例化userObject的方法与在Python中指定词典的方法完全相同。唯一的差异是JavaScript对象/词典只接受字符串关键字,而不是像Python词典那样接受可哈希化的对象。这些示例还显示JavaScript对象比C++或C#对象具有更大的可延展性。您不必预先声明属性lastLoginTime—如果userObject没有该名称的属性,该属性将被直接添加到userObject。如果记住JavaScript对象是词典,您就不会对此感到吃惊了,毕竟,我

8、们一直在向词典添加新关键字(和其各自的值)。这样,我们就有了对象属性。对象方法呢?同样,JavaScript与C++/C#不同。若要理解对象方法,首先需要仔细了解一下JavaScript函数。JavaScript函数是最棒的在很多编程

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。