- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 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
您可能关注的文档
- TD-LTE_基本信令流程.doc
- 教材3 Microsoft Word 文档.doc
- 太阳能术语解释.doc
- THOMSON技术规格书.doc
- 787 复习题.doc
- 商务文本翻译的方法和技巧.docx
- 2015年SCI收录航空航天期刊.docx
- (进料检验程序).docx
- 2005年1月英语语法.doc
- SW-01-001 ANR地滚轴的使用方针.doc
- 养成好习惯主题班会PPT成品课件培养孩子良好学习惯节约卫生教育成品 (90).pptx
- 精品青春励志主题班会ppt正能量激励理想梦想目标奋斗努力学生PPT课件34.pptx
- 精品青春励志主题班会ppt正能量激励理想梦想目标奋斗努力学生PPT课件1.pptx
- 养成好习惯主题班会PPT成品课件培养孩子良好学习惯节约卫生教育成品 (95).pptx
- 重庆市九龙坡区社区工作者考试题库word.docx
- 重庆市垫江县桂溪街道社区工作者考试题目附参考答案(名师推荐).docx
- 阳泉市城区南山路街道社区工作者考试试题【word】.docx
- 2024国网江苏省电力公司高校毕业生提前批招聘(约450人)笔试备考题库附答案.docx
- 2026中国资源循环集团面向海内外公开招聘高端人才33人【考前自测高频考点模拟试题(浓缩300题)附.docx
- (新版)2026年导游资格证考试题库【轻巧夺冠】.docx
原创力文档


文档评论(0)