日期:2014-05-16 浏览次数:20430 次
Javascript语言到目前为止,本身并没有提供类似于class这样的关键字来创建一个类.所以可以认为Javascript本身并不是完全意义上的面向对象的语言.但是Javascript中明明就是有对象的.再加上语言本身的一些特性,我们可以模拟出类,使得Javascript也变成面向对象的.
/** * 这是一个构造函数,是这个类的开始,当new这个类的对象时被调用 */ function User(userName) { // name是类的成员变量 this.name = userName } /** * 这个是类属性,相当于Java中的static属性 */ User.prop = 'person'; /** * 这个是实例方法,需要通过对象来访问的 */ User.prototype.getName = function() { return this.name } /** * 这个是类方法,通过类名访问的,相当于static的啦 */ User.getProp = function() { return User.prop; }
?
上面的代码就完成了一个最简单的类的定义.其中包括了类的成员变量,成员方法,以及类变量和类方法.
下面看一下如何用这个类:
// 创建对象 var user = new User('admin'); // 调用对象的方法 user.getName(); // 调用类方法 User.getProp();?
?