【发布时间】:2010-05-04 02:30:34
【问题描述】:
我见过以两种不同方式定义的对象,它们的功能相似,但当然是根本不同的。你可以这样做:
var myobject = {property: 'hello',
act: function() {
this.property += ' world';
}};
像这样:
function myobject() {
this.property = 'hello';
this.act = function() {
this.property += 'world';
}
}
第二种方法可以像这样创建对象
var newobj = new myobject();
但是您可以使用第一种表示法来做类似的事情,方法是使对象成为函数的返回值。 new 关键字的优点是能够传递可用于初始化对象属性的参数,但您也可以轻松地将 init 函数添加到第一种对象。
只是想知道除了这两个区别之外,是否还有一个根本区别使得一种方法绝对优于另一种方法。
【问题讨论】:
-
差别很大,没有人同意一种方法更好。背景:stackoverflow.com/questions/1595611/…
标签: javascript