方法1:使用对象字面量创建
代码如下:
let parent = {
name:"lx",
age:"20",
hobby:"cf"
}
在需要创建多个对象时,会产生大量重复代码。每次创建一个新对象都需要重新写一遍对象的属性和值。
方法2:使用Object创建
代码如下
let parent = new Object();
parent.name = "lx";
parent.age = "18";
方法3:使用构造函数创建
将多个对象的共性进行抽离,形成构造函数的属性。这样在创建多个属性一样的对象时,只需无脑传值即可。
let people = function(name,age,hobby){
this.name = name;
this.age = age;
this.hobby = hobby;
}
let son = people("liu",18,"play");
方法4:使用工厂模式创建
抽离构造函数的共性。例如:家庭成员都有姓名,年龄,爱好,但家庭职务的不同,有着不一样的分工。
let people = function(name,age,hobby,duty){
this.name = name;
this.age = age;
this.hobby = hobby;
if(duty== 1){
this.work = ["工作","家务"];
}else if(duty == 2){
this.work = ["上学"]
}
//也可以使用对象进行映射,减少if和else的使用
}
方法5:使用原型创建
代码如下
function family(){}
family.prototype.name = "happy family";
family.prototype.place = function(){
alert("北京");
}
其他
Object.create(null);
//可以创建一个对象,可以通过参数设置该对象的__proto__.