日期:2014-05-16  浏览次数:20543 次

用javascript构造一个自定义对象及其方法和属性

除了javascript内置对象的一些属性和方法外,javascript还支自定义对象,而且可以为对象添加自定义的对象和方法。

?

下面首先说下如何自定义自己的对象:

?

var person = {'name':'yuanjianhang','age':22,'sex':'male'}

?

上例中,就是定义了一个自定义的person对象,其中还定义了三个属性:name、age、sex。

要说明的是,在这种定义方式中,javascript会自动将冒号“:”之前的属性转化为字符串形式的。

?

如何给对象增加属性:

例如上例中,如果想给person增加一个新的属性,可以在大括号内直接写入:

var person = {'name':'yuanjianhang','age':22,'sex':male','health':'good'}

红色的部分就是新加的属性。

另一种给对象增加新的属性的方法是:

var person = {'name':'yuanjianhang','age':22,'sex':male'};

person.health = 'good';

目前我只知道这两种方法。

?

如何给对象增加方法:

还以对象person为例进行讲解。

var person = {'name':'yuanjianhang','age':22,'sex':male',eat:function() { alert('eat something'); }}

红色字体已经为对象person增加了一个新的方法,此方法就可以直接使用了:

person.eat();

?

另外一种为对象增加方法的方法为:

var person = {'name':'yuanjianhang','age':22,'sex':male'};

person.eat = function() {

alert('eat something');

}

此时新的方法已经添加成功。

?

添加对象的方法还有第三中形式:

var person = {'name':'yuanjianhang','age':22,'sex':male'};

function eat() {

alert('eat something');

}

person.dongNow = eat;

person.dongNow();

上例中我们创建了名为eat()的函数,然后把eat传给dongNow,后在调用.dongNow()方法。

?

目前我只知道以上方法创建对象和对象的相应方法和属性。如果大家还有更好的方法,欢迎大家多交流交流。