标签:
通过看 http://www.cnblogs.com/mindsbook/archive/2009/09/19/javascriptYouMustKnowPrototype.html 该文章和对代码的反复推敲,
现在对prototype这个属性有了一定的认识.下面就总结一下,也帮助自己再整理一下思路.以下纯属自己的认识和理解,慎看
撇开那些专业词语不说,我觉得prototype这个东西就是用来给调用它的函数或者说对象增加方法或者属性用的.不论是其他对象现有的方法和属性,还
是新加的方法和属性.
给函数新增属性和方法暂时知道有3种方法:
1.在函数定义时:
1 function test() { 2 this.staticMethod = function () { 3 document.writeln(‘这是函数本身的方法‘); 4 } 5 }
2.在定义函数之后,直接用 函数名.方法名=function(){}
test.hello3 = function () { document.writeln("hello three "); }
3.通过prototype
3.1添加新的属性或者方法
test.prototype.age = 24; test.prototype.hello = function () { document.writeln("hello" ); }
3.2添加已有的属性和方法(即已经存在的其他函数的属性和方法,即所谓的继承)
function test1()={ this.adress=‘‘; thsi.getAdress=function(){ alert(adress); } } test.prototype = new test1;
而这三种方法中,第1种和第3种添加的属性或者方法是非静态的,第2中方法添加的属性和方法是静态的.那么在调用的时候就要分清楚应该如何调用了.
第三种也就是实现了所谓的继承.
标签:
原文地址:http://www.cnblogs.com/zhangxs/p/4682839.html