本文详细介绍JavaScript中创建对象的四种核心方法:对象字面量、new Object实例化、构造函数以及工厂模式。通过具体代码示例,对比各方法的优缺点及适用场景,帮助开发者根据实际需求选择最合适的对象创建策略。
前言
本文将深入探讨JavaScript中构建对象的四种主要方式。首先明确目标对象的结构:以girlFriend为例,它包含name和age两个基础属性,以及一个getName方法用于返回名字;此外还包含一个嵌套对象address,该对象拥有name(所在地)和code(邮政编码)两个属性。下文将逐一演示如何实现这一结构。
1. 基于对象字面量
对象字面量是最直观且广泛使用的创建方式,直接定义属性与方法。其优势在于语法简洁、开发便捷,但缺点是无法高效复用,难以批量生成结构相同的对象。
/* 1.基于对象字面量 */
let girlFriend = {
name: "萝莉",
age: 18,
getName: function() {
return this.name
},
address: {
name: '北京市',
code: '10000'
}
}2. 利用new Object方式创建对象
第二种方法是通过new Object构造函数来实例化对象,这是JavaScript中基础的对象创建手段之一。
// 2. 利用new Object方式创建对象
function GirlFriend(name, age, address) {
this.name = name
this.age = age
this.address = address
this.setName = function() {
return (this.name)
}
}
//利用new 来创建对象
var girlFriend1 = new GirlFriend("萝莉", 18, {
name: '北京市',
code: '10000'
})在调试台中运行girlFriend变量,可获得如下输出结果:

3. 基于构造函数
构造函数模式支持对象的批量创建。需注意构造函数名GirlFriend的首字母必须大写,随后通过new GirlFriend关键字进行实例化操作:
// 3. 基于构造函数
function GirlFriend(name, age, address) {
this.name = name
this.age = age
this.address = address
this.setName = function() {
return (this.name)
}
}
//利用new 来创建对象
var girlFriend1 = new GirlFriend("萝莉", 18, {
name: '北京市',
code: '10000'
})4. 基于工厂方法
工厂模式是一种设计模式,通过封装创建函数来生成特定对象。其核心在于抽象出属性与方法的赋值逻辑,仅对外暴露配置参数,从而实现对同类型对象的高效量产。
// 4.基于工厂方法
function createGirlFriend(name, age, address) {
let o = new Object();
o.name = name;
o.age = age;
o.address = address;
o.setName = function() {
return this.name
}
return o;
}
let girlFriend = createGirlFriend('萝莉', 18, {
name: '北京市',
code: '10000'
})此处定义了一个名为createGirlFriend的工厂函数,通过参数将属性传递给内部创建的o对象,最终返回该o对象。实例化girlFriend后,其结果与第一种字面量方法生成的对象一致:

至此,关于JavaScript对象四种创建方法的介绍已完成。如需了解更多JavaScript对象相关内容,建议查阅本站往期文章或继续阅读后续系列教程,感谢大家的支持!