javascript 的面向对象编程

2016-01-29 11:37 19 1 收藏

javascript 的面向对象编程,javascript 的面向对象编程

【 tulaoshi.com - Javascript 】

    在写面向对象的WEB应用程序方面JavaSciprt是一种很好的选择.它能支持OOP.因为它通过原型支持继承的方式和通过属性和方法的方式一样好.很多开发者试图抛弃JS,试着用C#或JAVA仅是因为JS不是他认为合适的面向对象的语言.许多人还没有认识到javascript支持继承.当你写面向对象的代码时.它能给你很强大的能量.你也可以使用它写出可复用,可封装的代码.

对象为何如此伟大?
    面向对象思想的成功是由于它仿照了现实中的事物和事物的联系.事物有属性和方法.如果我们描述一个台灯.我们会说它的高度和宽度,比如12CM."开灯"这个动作是它的方法.当它是处于开着的状态时.它可以被调亮一点或暗一点(也就是亮度这个属性值变大或变小).

javascript 给予了为WEB应用程序创建对象的能力.对象在需要的时候相应的事件会被触发,代码封装后,它能被实例化很多次.

用 new Object() 来创建对象

在javascript里有几种创建对象的方法,在不同的场合可用不同的方法.最简单的就是用 new 操作符,例如:
<script language="javascript" type="text/javascript"
<!--

person = new Object()
person.name = "Tim Scarfe"
person.height = "6Ft"

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/javascript/)

person.run = function() {
this.state = "running"
this.speed = "4ms^-1"
}

//--
</script

我们在这个例子里定义了person这个对象,然后加入了它的属性和方法.在这个例子里,自定义的方法里有两个属性.

用文字记号Literal Notation创建对象

用文字记号也可以创建对象,但要javascript 1.2以上版本.它的创建形式是多样的.

<script language="javascript" type="text/javascript"
<!--

// Object Literals

timObject = {
property1 : "Hello",
property2 : "MmmMMm",
property3 : ["mmm", 2, 3, 6, "kkk"],
method1 : function(){alert("Method had been called" + this.property1)}
};

timObject.method1();
alert(timObject.property3) // will yield 3

var circle = { x : 0, y : 0, radius: 2 } // another example

// nesting is no problem.
var rectangle = {
upperLeft : { x : 2, y : 2 },
lowerRight : { x : 4, y : 4}
}

alert(rectangle.upperLeft.x) // will yield 2

//--
</script

文字记号可是是数组,也可以是任意的javascript表达式或值.

用 new 操作符或文字记号创建一个自定义对象都是简单的,也是符合逻辑的.但它最大的缺点就是结果不可复用.也不能很容易的用不同的版本初始化创建对象.例如上面的第一个例子,如果 person 的 name 不是 "Tim Scarfe",那样我们不得不重新定义整个对象,仅仅为了适应它的一点点改变.

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/javascript/)

本新闻共2页,当前在第1页  1  2  

来源:https://www.tulaoshi.com/n/20160129/1482796.html

延伸阅读
标签: Web开发
要是XHTML与CSS能面向对象。。太阳应该从北边升起了。但是,凡事都应该带着OO的思想来看问题,也勉强可以凑数拉。其实,早在零几年就有人提出了OO-style,不过已找不到。 那要怎样OO呢?现在大家都知道CSS是可以介样写滴:  .G_G { /* xxxxxx */ }  我们可以把它大约看一个原型,或者说成类,-__-b 好像本来就是类的样子,然后要...
标签: Delphi
  Delphi 的编程语言是以 Pascal为基础的。 Pascal 语言具有可读性好、编写容易的特点,这使得它很适合作为基础的开发语言。同时,使用编译器创建的应用程序只生成单个可执行文件 (.EXE) ,正是这种结合,使得 Pascal 成为 Delphi这种先进开发环境的编程语言。         本章中,我们将讨论 Object...
标签: Delphi
  2.1.8.4 过程和函数的语句部分         过程或函数的语句部分由 begin 开始, end结束。函数需要一个返回值。可以将返回值赋给函数名称,也可以将返回值赋给 Result 变量。下面的例程将返回值赋给函数名称: function CalculateInterest(Principal,InterestRate: Double):Double; begi...
标签: PHP
出自:http://www.cncsk.com/Document/WebDev/PHP/200512291759.htm 这篇文章介绍在PHP的面向对象编程(OOP)。我将演示如何用面向对象的概念编出较少的代码但更好的程序。祝大家好运。 面向对象编程的概念对每一个作者来说都有不同的看法,我提醒一下一个面向对象语言应有的东西: - 数据抽象和信息隐藏 ...
标签: Web开发
作者:Truly http://truly.cnblogs.com/ 日期:2007.7.29 上次我们在《在JavaScript中使用面向对象》讨论了对象的声明、成员的声明、全局变量和局部变量以及命名空间的处理。本文继续讨论面向对象,今天介绍方法重载。 http://www.cnblogs.com/Truly/archive/2007/07/24/830013.html 同时上次有人询问Function对象的apply方法和c...

经验教程

592

收藏

72
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部