1

定义对象成员的最佳方法是什么,请解释原因

1:第一种方式

var Obj = {
           M1 : 1,
           M2 : 2    
}

像使用它

 Obj.M1

2:第二路

var Obj = function(){
 if (!(this instanceof Obj ))
            return new Obj ();
}
Obj.prototype.M1 =1 ;
Obj.prototype.M2 =2 ;

使用它喜欢

Obj().M1;

我的意思是使用原型比在这些 {} 中定义整个成员更好?

4

1 回答 1

4

这取决于您是要创建多个实例Obj还是只创建一个实例。仅当您使用第二种方式时,才可能使用基于类的面向对象语言的方面,例如继承(它不是真正的继承,因为您从基于类的 OO 语言中知道它,但它是相似的)。通常,您可以将第一种方式与基于类的 OO 编程语言中的静态类进行比较,以防您更熟悉它们。

于 2012-12-16T11:30:03.673 回答