JS 原生创建对象
· 阅读需 1 分钟
一些概念
- 封装:把属性和方法封装在对象中
- 对象:具体值某个事物,有特征(属性)和行为(方法)
创建对象的三种方式
系统构造函数
var obj=new Object();
字面值
var obj={};
自定义构造函数(优化后的工厂模式)
//自定义构造函数
function Person(name,age,gender){
this.name=name;
this.age=age;
this.gender=gender;
this.work=function(){
console.log(this.name+"is working");
}
}
var per3=new Person("wang",50,"male");
per3.work();
console.log(per3.work);
console.log(per3 instanceof Person);//可以判断类型
工厂模式(推论)
//工厂模式
function createObject(name,age,gender){
var obj=new Object();
obj.name=name;
obj.age=age;
obj.gender=gender;
obj.sleep=function(){
console.log(this.name+" is sleeping");
};
return obj;
}
var per4=createObject("July",18,"female");
per4.sleep();