body>
<script>
//1、用new object方式
const obj1 = new Object()
obj1.name = 'zhuzhu'
obj1.age = 17
console.log(obj1);//{name: 'zhuzhu', age: 17}
//2、用字面量的方式
const obj2 = {
name: 'xinxin',
age: 18
}
console.log(obj2);//{name: 'xnxin', age: 18}
//3、factory模式
function Student(name, age) {
const obj3 = {
name: name,
age: age
}
return obj3
}
const aa = new Student('aa', 18)
console.log(aa);//{name: 'aa', age: 18}
//4、构造函数
//语法格式;
// function 构造函数名(){
// this.属性=值;
// this.方法=function(){}
// }
// new 构造函数名
function Student(name, age) {
this.name = name,
this.age = age,
this.playGame = function (game) {
console.log(game);//Student {name: 'aa', age: 18, playGame: ƒ}
}
}
var yy = new Student('yy', 18)
console.log(yy.name);//yy
console.log(yy.age);//18
yy.playgame('王者')//王者
//5、原型方式
function Student1() {
}
Student1.prototype.name = 'zz'
Student1.prototype.age = 18;
Student1.prototype.sayHi = function (hi) {
console.log(hi);
}
const zz = new Student1('zz', 18)
zz.sayHi('你好')//你好
//6、构造函数+原型的方式
function Student3(name, age) {
this.name = name;
this.age = age
}
Student3.prototype.help = function (hp) {
console.log(hp);
}
const AA = new Student3('AA', 18)
AA.help('今天教会了同学一道数学题')//今天教会了同学一道数学题
//7、类方式
class Student6 {
constructor(name, age) {
this.name = name,
this.age = age
}
build(family) {
console.log(family);
}
}
const lp = new Student6('牛皮', 18)
lp.build('建设美好家园')//建设美好家园
</script>
</body>
对象的7种创建方式
于 2022-09-08 22:05:09 首次发布
这篇博客介绍了JavaScript中创建对象的多种方式,包括new Object()、字面量方式、工厂模式、构造函数、原型方式、构造函数结合原型以及类方式,并通过实例详细解析了每种方式的使用和特点。同时,展示了构造函数和原型在对象实例化和方法继承中的应用。
摘要由CSDN通过智能技术生成