//特点1:快级作用域,程序启动自动执行
//内部的成员变量,外部无法访问(除了var)
//简单的函数链式调用
function Dog(){
this.run=function(){
alert("跑");
return this;
};
this.eat=function(){
alert("吃");
return this;
};
this.sleep=function(){
alert("睡");
return this;
}
};
var p1=new Dog();
p1.run().eat().sleep();
(function(window,undefined){ //$最常用的对象返回给外界,大型程序开发,一般使用'__'作为私有对象(规范) function _$(arguments){ //实现代码 }; //在function上扩展一个可以实现链式编程的方法 Function.prototype.method=function(metName,fn){ this.prototype[metName]=fn; return this; //链式编程关键 } //在_$原型对象上加一些公共方法 _$.prototype={ const:_$, addEvent:function(){ alert(11); return this; //链式编程关键 }, setStyle:function(){ alert(22); return this; //链式编程关键 } } //window上先注册一个全局变量,与外界产生关系 window.$=_$; //写一个准备方法 _$.onReady=function(fn){ //1.实例化出来_$对象,真正注册到window上 window.$=function(){ return new _$(arguments); } //2.执行传进入的代码 fn(); //3.实现链式编程 _$.method('addEvent',function(){}).method('setStyle',function(){}); } })(window); //程序的入口 /* $(function(){ //jquery代码 })*/ $.onReady(function(){ $("dd").addEvent().setStyle(); })