有如下代码: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();