//直接量
var O = {aa:1,bb:2};
//构造函数
var OO = function(){
this.aa = 100;
this.bb = 200;
}它们的使用方法也稍有不同:构造函数对象需用new运算符来调用,而直接量对象则不用。
alert(O.aa);
alert((new OO()).aa);我们知道,使用delete可以删除对象的属性和方法,直接量对象的属性和方法一旦删除将不可再使用,而构造函数对象的属性和方法即使删除了,重新调用后它仍存在:
alert(O.aa);//return: 1
delete O.aa;
alert(O.aa);//return: undefined
var oo = new OO();
alert(oo.aa);//return: 100
delete oo.aa;
alert(oo.aa);//return: undefined
var oo = new OO();
alert(oo.aa);//return: 100
delete oo.aa;
alert(oo.aa);//return: undefined2009-07-16 理解:
Js中构造函数相当于创建了一个类,之后可以使用new关键字来实例化出一个对象,而对象直接量相当于一次性完成了上面两个步骤,直接返回一个对象。另外,构造函数有一个prototype属性,它也是一个对象,称为原型对象,构造函数创建的类可以继承原型对象中所有的属性和方法,从这点意义来说,原型对象相当于是父类。
评论(0)
暂无评论。