读书人

请问大神们一个关于js中new的用法

发布时间: 2012-10-18 13:46:56 作者: rapoo

请教大神们一个关于js中new的用法
有如下代码:var person = new Person(); person.walk();
这里的person应该是一个对象,那Person()是方法还是个类?

[解决办法]
var person = new Person(); person.walk();中的Person()是JS中常用的构造函数、原型方式或两者混合方式对象(你可以理解为其他OOP语言里的类对象),里面封装定义了一些属性和方法。要想从外部访问这些属性和方法,就需要先将这个对象实例化(我们通常俗称为new一个实例),就是那个person。而person.walk()很显然是对象Person()里的一个函数或原型(方法)。以混合方式为例:

JScript code
var Person=function(){  //内部属性  this.age=4;  this.weight=20;    //内部方法  Person.prototype.walk=function(){    alert("走啊走,乐啊乐!");  }  }//外部访问(调用)//new一个Person()函数对象的新实例var person=new Person();//访问其属性alert(person.age);//调用其方法person.walk(); 

读书人网 >JavaScript

热点推荐