面向对象的JS整理.docVIP

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

JavaScript拥有很强的面向对象编程能力,即便是因为其与其它语言在面向对象上的不同而产生了一些争论也仍是如此。 这篇文章从对面向对象编程的简介开始,然后回顾了JavaScript的对象模型,最后演示了JavaScript基于面向对象编程的相关概念。 JavaScript回顾 如果你对JavaScript的概念——比如变量、类型、函数以及作用域——不是很确定,你可以在《JavaScript回顾》中阅读到相关的主题。你也可以参阅《JavaScript 1.5核心指导》。 面向对象编程 面向对象编程是通过对现实世界中的事物进行抽象从来建立模型的一种编程思想。它借鉴了已有的编程思想中的一些技术,包括模块化、多态以及封装。今天,许多流行的编程语言(诸如Java、JavaScript、C#、C++、Python、PHP、Ruby和Objective-C)都支持面向对象编程(OOP)。 与传统的看法中将程序看作是一系列功能的集合,或者更简单地,作为计算机的一系列指令不同,面向对象编程可以被看做是使用一系列相互合作的对象所形成的集合的一种软件设计方式。在OOP中,每个对象都能够收到消息、处理数据并发送消息给其它对象。每个对象都能被看做是一个拥有特定角色或者职责的小型独立机器。 面向对象编程的设计者希望通过它来使编程变得更加灵活,更加易于维护,并且面向对象编程在大型的软件工程开发中广受欢迎。凭借面向对象编程对模块化的重点强调,编程人员通过给予其本身对复杂情况和流程更直接的分析、编码以及理解,试图使它比其它不太支持模块化的编程方法更加简单地进行开发,代码之后更容易被人理解。 术语 类:定义了对象的特征。 对象:类的实例。 属性:对象的一个特征,比如颜色。 方法:对象的一种能力,比如走路。 构造体:当类被实例化的时候调用的方法。 继承:一个类可以通过继承而得到另一个类的特征。 封装:一个类只定义了某个特定对象的特征,一个方法只定义了某个特定方法该如何执行。 抽象:一个类中复杂继承、方法和属性的结合必须能够模拟一个现实的模型。 多态:不同的类可能会定义相同的方法或者属性。 参阅维基百科的《面向对象编程》以获得对面向对象编程更加拓展的描述。 基于原型的编程 基于原型的编程是面向对象编程的一种类型,在这种类型中,类并不显式地表现重用(在基于类的语言中被称为继承),而是通过改进现有的对象来完成重用的过程,这些现有的对象被称为“原型”。这种模型也被称为是“低类(class-less)”、“面向原型(prototype-oriented)”或者“基于实例(instance-based)”编程。 基于原型的语言最初(并且最典范)的例子是由David Ungar和Randall Smith开发的编程语言Self。然而,“低类”这种风格最近逐渐流行起来,并且已经被众多编程语言所采纳,包括JavaScript、Cecil、NewtonScript、lo、MOO、REBOL、Kevo、Squeak(当使用Viewer架构来操纵Morphic组件的时候)等等。 JavaScript面向对象编程 核心对象 JavaScript的核心包含了几种对象,例如Math、Object、Array、String这种的对象。下面的例子展示了如何使用Math对象的random()方法来获得一个随机数: JavaScript Code复制内容到剪贴板 alert(Math.random()); 备注:以上以及之后的示例中都假定alert函数(正如浏览器中已经包含的那个一样)是被全局定义的。这个alert函数实际上并不是JavaScript本身的一部分。 参阅《JavaScript 1.5核心参考:全局对象》以获得JavaScript的核心对象列表。 在JavaScript中,每个对象都是Object类的一个实例,并因此继承Object的所有属性和方法。 自定义对象 类 JavaScript是一种基于原型的语言,它没有C++或者Java中的那种类的声明。这对那些习惯于有类声明的语言的程序员来说有时是很迷惑的。不同之处在于,JavaScript使用函数来代替类。定义一个类和定义一个函数一样简单。下面的例子中我们定义了一个叫做Person的新类: JavaScript Code复制内容到剪贴板 function Person() { } 对象(类实例) 我们用new obj这样的语句来创建类obj的一个新的实例,之后把创建的结果(它的类型是obj)赋值给一个变量来引用它。 下面的例子中我们定义了一个类Person,并且创建了它的两个实例(person1和person2): JavaScript Code复制内容到剪贴板 function Person() { } var person1

文档评论(0)

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

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

1亿VIP精品文档

相关文档