JavaScript设计模式—富有表现力的Javascript(一)
学习引言:
javascript设计模式是图灵出版,学习中力求每个章节都细看。
正题:
1.1 javascript的灵活性
面向对象对象的Javascript编程模式:1、可以保存状态 2、具有对象内部才能调用的方法 3、对编写的程序更能掌握其结构,能经受的起迭代开发(个人认为)
//构造函数,也可俗称为类
var Anim=function(){
...
}
...
}
//类中的方法,javascript中的原型
Anim.prototype.start=function(){
...
}
Anim.prototype.start=function(){
...
}
注:一般讲方法放入原型中,因为原型中一般存储不变通用的东西
代码
Function.prototype.method=function(name,fn){
this.prototype[name]=fn;
}
var Anim=function(){
}
Anim.method("start",function(){alert("开始了")})
Anim.method("stop",function(){alert("停止了")})
var anim=new Anim();
anim.start();
anim.stop();
this.prototype[name]=fn;
}
var Anim=function(){
}
Anim.method("start",function(){alert("开始了")})
Anim.method("stop",function(){alert("停止了")})
var anim=new Anim();
anim.start();
anim.stop();
上面的代码突显出一下几点:
1、所有function都是Function这个类的对象 比如 var f=new Function("alert();")
2、我们也可以往系统默认类原型中添加方法,但这不提倡,容易混乱
函数是一等对象:
匿名函数可以创建闭包(闭包将另开一个篇进行学习)