js创建对象的5种方法
1、Object构造函数模式
所谓 Object 构造函数就是将 Object 作为构造函数,先创建一个空的 Object 对象,再动态添加属性或者方法。
//创建 Object 对象
var p = new Object()
//动态添加属性和方法
p.name = 'Tom'
p.age = 18
p.setName = function(name){
this.name = name
}
适用场景: 起始时不确定对象内部数据。
问题: 语句太多。
2、对象字面量模式
这是日常中最常用到的方法,使用 {} 创建对象,同时指定属性和方法。
var p = {
name = 'Tom'
age = 18
setName: function(name){
this.name = name
}
}
适用场景: 起始时对象内部数据是确定的。
问题: 创建多个对象时,会产生重复代码。
3、工厂模式
通过工厂函数动态创建对象并返回。
function createPerson(name,age){
var obj = {
name: name,
age: age,
setName: function(name){
this.name = name
}
}
return obj
}
var p1 = createPerson('Tom',18)
适用场景: 需要创建多个对象。
问题: 对象没有一个具体的类型,都是Object类型。
4、自定义构造函数模式
与object构造函数模式类似,通过自定义一个构造函数,再进行new操作创建对象
function Person(name, age){
this.name = name
this.age = age
this.setName = function(name){
this.name = name
}
}
var p1 = new Person('Tom',18)
适用场景: 需要创建多个类型确定的对象。
问题: 每个对象都有相同的数据,浪费内存。
5、构造函数 原型的组合模式
自定义构造函数,属性在函函数中初始化,方法添加到原型上。
function Person(name, age){
this.name = name
this.age = age
}
Person.prototype.setName = function(name){
this.name = name
}
var p1 = new Person('Tom',18)
适用场景: 需要创建多个类型确定的对象。
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgkacga
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13