欢迎光临

木子屋

标题: 比较直接量和构造函数创建的Js对象

作者: dnawo

日期: 2008-12-17 01:58 PM

分类: 脚本语言

内容: 在Js中，创建对象的方法可有两种：直接量和构造函数，如下例子：
复制内容到剪贴板 程序代码//直接量
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: undefined
2009-07-16 理解：
Js中构造函数相当于创建了一个类，之后可以使用new关键字来实例化出一个对象，而对象直接量相当于一次性完成了上面两个步骤，直接返回一个对象。另外，构造函数有一个prototype属性，它也是一个对象，称为原型对象，构造函数创建的类可以继承原型对象中所有的属性和方法，从这点意义来说，原型对象相当于是父类。

+ 查看当前日志评论 (0)

登录

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 2.922 ms

返回

标题: 比较直接量和构造函数创建的Js对象

你没有权限发表评论

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 2.922 ms

返回

暂无评论

返回

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 2.984 ms

返回