javascript 的面向对象编程

thosexuan5

thosexuan5

2016-01-29 11:37

javascript 的面向对象编程,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"

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

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

//--
</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

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

// 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",那样我们不得不重新定义整个对象,仅仅为了适应它的一点点改变.

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

展开更多 50%)
分享

猜你喜欢

Javascript面向对象编程

Web开发
Javascript面向对象编程

javascript 的面向对象编程

电脑网络
javascript 的面向对象编程

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Javascript中的面向对象编程实例

Web开发
Javascript中的面向对象编程实例

理解面向对象编程

编程语言 网络编程
理解面向对象编程

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

PHP的面向对象编程

Web开发
PHP的面向对象编程

JavaScript的面向对象(一)

Web开发
JavaScript的面向对象(一)

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

《噬神者2 狂怒解放》重炮流配置与弹药调和解析

《噬神者2 狂怒解放》重炮流配置与弹药调和解析

中文的版用javascript实现超酷的“网页时钟”

中文的版用javascript实现超酷的“网页时钟”
下拉加载更多内容 ↓