欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JS中的prototype  

程序员文章站 2024-03-15 16:37:06
...

JS面向对象中的prototype

JavaScript为每一个类型(Type)都提供了一个prototype属性,将这个属性指向一个对象,这个对象就成为了这个类型的“原型”,这意味着由这个类型所创建的所有对象都具有这个原型的特性。另外,JavaScript的对象是动态的,原型也不例外,给prototype增加或者减少属性,将改变这个类型的原型,这种改变将直接作用到由这个原型创建的所有对象上,例如:

//把一个方法变成一个对象,为对象创建方法和属性 
var Name = function () { 
//通过prototype给一个对象创建方法 
Name.prototype.Add = function (num, title) { 

//也可以直接用this加方法名为对象创建方法和上面的等价 
this.Way = function (str) { 

//为对象添加属性值 
Name.prototype.xing = "123"; 

//定义静态属性和方法

Name.shi = "static";

Name.Addd = function (num, title) {}

//方法也可以这样声明 
function Name1() { 
Name1.prototype.add = function () { } 
this.way = function () { } 
//静态的全局变量,在方法外可以调用;

//静态的局部变量和方法仅限于方法内使用;

//实例对象不能调用静态的方法 
//实例对象不能使用prototype