一.字面量的方式
var per1 = {
name:"卡卡西",
age:20,
sex:"男",
eat:function () {
console.log("吃........");
},
readBook:function () {
console.log("读书....");
}
};
二.调用系统的构造函数
var per1 = new Object();
per1.name = "昆明";
per1.age = 19;
per1.sex = "男";
per1.eat = function () {
console.log("cccc");
};
per1.readBook = function () {
console.log("读书.....");
};
三.自定义构造函数
function Person(name,age,sex) {
this.name = name;
this.age = age;
this.sex = sex;
this.eat = function () {
console.log("ccccc");
};
this.readBook = function () {
console.log("读书");
};
}
四.工厂模式创建对象
function createObject(name,age) {
var obj = new Object();
obj.name = name;
obj.age = age;
obj.sayHi = function () {
console.log("say_Hi");
};
return obj;
}
|
工厂模式创建对象 or 自定义构造函数创建对象 |
相同点 |
都是函数 都可以创建对象 都可以传入参数 |
不同点 |
工厂模式: 函数名是小写 有new 有返回值 new之后的对象时当前的对象 直接调用函数就可以创建对象 自定义构造函数:函数名是大写(首字母) 没有new 没有返回值 this是当前对象 通过new的方式来创建对象 |
网友评论