javascript创建对象实例的以下三种方法,分别在什么情况下使用? 财富值39

2016-04-03 06:04发布

如图:

javascript创建对象实例的以下三种方法,分别在什么情况下使用或者说比较常用的是哪种?

4条回答

一二种没有区别,都是简单的创建对象。
第三种是面相对象的方式,在内部可以数据和行为的封装,比如有first name, last name,可以封装生成full name的逻辑;有gender就可以有封装prefix的逻辑

个人而言,我几乎没有用过第一种,第二种我经常用在JavaScript代码不多的时候。第三种我经常用在写工具集的时候。

第一种用的很少。如果用的话第二三种常用。
第三种用构造函数写插件用的比较多,因为会在prototype上面拓展方法。

对象当然要用(3)了。

(1)和(2)对象没有自己的类型,都是Object,(3)可以用instanceof来判断。有了自己的类型之后,还可以向People.prototype上添加函数,来为其添加扩展方法,(1)和(2)只能为每个对象添加方法,而(3)可以为一类对象添加。

(2)的话,如果要用字典会考虑这一种。

一周热门 更多>