构造函数的八种方法

 我来答
兔神看星星
2023-01-19 · 超过110用户采纳过TA的回答
知道小有建树答主
回答量:828
采纳率:100%
帮助的人:12.3万
展开全部

1.Object构造函数模式

使用方式:先创建空对象,再添加属性/方法

适用场景:起始时不确定对象内部的数据

缺点:语句太多

2.对象字面量

使用方式:使用{}创建对象,同时指定属性/方法

适用场景:起始时对象内部数据确定

缺点:如果创建多个对象,有重复代码

3.工厂模式

使用方式:通过工厂函数动态创建对象并返回

适用场景:需要创建多个对象

缺点:对象没有具体的类型,都是Object类型

4.自定义构造函数模式

使用方式:自定义构造函数,通过new创建实例对象

适用场景:需要创建多个类型确定的对象

缺点:每个对象都有相同的数据,浪费内存

5.构造函数+原型的组合

使用方式:自定义构造函数,属性在函数中初始化,方法添加到原型上

适用场景:需要创建多个类型确定的对象

6.动态原型模式

动态原型函数模式把所有信息都封装在了构造函数中,在构造函数中初始化原型,又保持了同时使用构造函数和原型的优点。

如果不用if判断的方式直接在原型上添加方法,那么每一次new一个实例对象的时候都会去重写原型,浪费内存空间,而如果加了判断那么在原型只会在第一次实例话对象的时候就生成了,以后每一次new实例均不会再重写原型对象。

7.稳妥构造函数模式

所谓稳妥对象,指的是没有公共属性,而且其方法也不引用this的对象。稳妥对象最适合在一些安全环境中。

8.es6 class

与组合构造函数非常相似,语法更加精炼简洁。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式