//定义一个公共的函数,工厂模式
function sharedModel(name,height){
var obj = new Object();
this.name = name;
this.height = height;
this.run = function() { //this表示当前实例化的对象,即当前作用域下的对象,也就是obj
return this.name + ',身高' + this.height + ',在创造性的学习!'
};
return obj;
};
var box = sharedModel('bacon',180);
alert(box.run());
//构造函数
function Box(name,height){
this.name = name; //这里面的this就相当于已经实例化了一个对象,并且指向这个对象,而且构造函数无返回值
this.height = height;
this.run = function() { //this表示当前实例化的对象,即当前作用域下的对象,也就是obj
return this.name + ',身高' + this.height + ',在创造性的学习!'
};
};
var box = new Box('bacon', 180) //实例化
alert(box.run())
工厂模式方法和构造方法的区别在于:
1.构造方法不会创建对象(new Object)
2.构造方法将属性和方法通过this来进行赋值
3.构造方法没有return语句
总是记不住,写出来,偶尔可以看看。
浙公网安备 33010602011771号