模式作用:
1,用于创建特点类型的对象
2,第一次声明的时候给对象赋值
3,自己声明构造函数,赋予属性和方法
注意事项:
1,声明函数的时候处理业务逻辑
2,区分和单例的区别,配合单例实现初始化
3,构造函数大写字母开头(建议)
4,注意new的成本(继承)
<meta charset="utf-8">
<script type="text/javascript">
//1 用于创建特定类型的对象
//2 注意函数的命名规范
//3 开发的时候尽量写单引号
//4 js里的构造函数比较特殊的地方 new
//5 其他的语言里
//6 zaomen就是构造函数 他又充当了类的概念
//function zaomen(){ //给函数一个变量
/*var AA={
//造门
function:zaomen(huawen){
if(!(this instanceof zaomen)){
return new zaomen();
}
var _huawen="普通"
if(huawen){
_huawen=huawen;
}
this.suo="普通";
//this.huawen="普通";
this.huawen=_huawen;
this.create=function(){
return "【锁头】"+this.suo+"【花纹】"+this.huawen;
//return'【锁头】'+this.suo+'【花纹】'+this.huawen
}
}
}*/
function zaomen(huawen){
if(!(this instanceof zaomen)){
return new zaomen();
}
var _huawen="普通"
if(huawen){
_huawen=huawen;
}
this.suo="普通";
//this.huawen="普通";
this.huawen=_huawen;
this.create=function(){
return "【锁头】"+this.suo+"【花纹】"+this.huawen;
//return'【锁头】'+this.suo+'【花纹】'+this.huawen
}
}
//var xiaozhang=zaomen();
//var xiaozhang=new AA.zaomen();
var xiaozhang=new zaomen();
alert("xiaowang"+xiaozhang.create());
//var xiaoli=new BB.zaomen("绚丽");
var xiaoli=new zaomen("绚丽");
alert("xiaoli"+xiaoli.create());
</script>