js中Prototype表示了该函数的原型,prototype表示了一个类的属性的集合;当通过new来生成一个类的对象时,prototype对象的属性就会成为实例化对象的属性;无法访问到,也就是变为私有变量和私有函数。
本文操作环境:Windows7系统、Dell G3电脑、javascript1.8.5。
prototype对象是实现面向对象的一个重要机制。每个函数也是一个对象,它们对应的类就是function,每个函数对象都具有一个子对象prototype。
Prototype 表示了该函数的原型,prototype表示了一个类的属性的集合。当通过new来生成一个类的对象时,prototype对象的属性就会成为实例化对象的属性。
这个属性非常有用:为一个特定类声明通用的变量或者函数。
在函数内定义的变量和函数如果不对外提供接口,那么外部将无法访问到,也就是变为私有变量和私有函数。
function Obj(){ var a=0; //私有变量 var fn=function(){ //私有函数 } }
静态变量、函数
当定义一个函数后通过 “.”为其添加的属性和函数,通过对象本身仍然可以访问得到,但是其实例却访问不到,这样的变量和函数分别被称为静态变量和静态函数,用过Java、C#的同学很好理解静态的含义。
function Obj(){ } Obj.a=0; //静态变量 Obj.fn=function(){ //静态函数 } console.log(Obj.a); //0 console.log(typeof Obj.fn); //function var o=new Obj(); console.log(o.a); //undefined console.log(typeof o.fn); //undefined
相关学习推荐:js视频教程
以上是js中prototype是什么的详细内容。更多信息请关注PHP中文网其他相关文章!