# javascript Methods
所有的对象都有一个prototype,它引用了对象。
虽然原型对象初始化时是空的,但是你在其中定义的任何属性都会被该构造函数创建的所有对象继承。
静态对象可以直接使用,无需也不能创建实例。
静态方法、属性使用类名访问。
非静态方法、属性使用实例名访问。
## 添加静态方法、属性:
类名.方法名 = 方法实现;
类名.属性名 = 属性值;
类名.extend({
属性1:属性1值,
...
方法1:function(){
//do something
},
...
});
## 添加非静态方法、属性:
类名.prototype.方法名 = 方法实现;
类名.prototype.属性名 = 属性值;
**原型prototype方法,需要类的实例化调用**
常规方法与静态方法的区别只在于prototype关键字的使用与否;
静态方法只能在function外声明;
$.extend扩展的是jQuery本身的静态方法;
所有的对象都有一个prototype,它引用了对象。
虽然原型对象初始化时是空的,但是你在其中定义的任何属性都会被该构造函数创建的所有对象继承。
静态对象可以直接使用,无需也不能创建实例。
静态方法、属性使用类名访问。
非静态方法、属性使用实例名访问。
## 添加静态方法、属性:
类名.方法名 = 方法实现;
类名.属性名 = 属性值;
类名.extend({
属性1:属性1值,
...
方法1:function(){
//do something
},
...
});
## 添加非静态方法、属性:
类名.prototype.方法名 = 方法实现;
类名.prototype.属性名 = 属性值;
**原型prototype方法,需要类的实例化调用**
常规方法与静态方法的区别只在于prototype关键字的使用与否;
静态方法只能在function外声明;
$.extend扩展的是jQuery本身的静态方法;
$.fn.extend扩展的是原型prototype方法,需要类的实例化调用;
------------------------------------------------------------------------------------------
关于$.extend与$.fn.extend的说明请参考以下文章:
$.extend() and $.fn.extend() confusion
http://asimilia.wordpress.com/2008/12/17/jquery-extend-confusion/