//构造函数 function myClass(message) { //公有属性 this.myMessage = message; //私有属性 var _separator = ' -'; var _myOwner = this; //私有方法 function showMessage() { alert(_myOwner.myMessage); } //特权方法(也是公有方法) this.appendToMessage = function(appendMessage) { this.myMessage += _separator + appendMessage; showMessage(); } } //公有方法 myClass.prototype.clearMessage = function() { this.myMessage = ''; } myClass.prototype = { clearMessage:function(){ this.myMessage = ''; } } //静态属性 myClass.myName = 'SOBusiness'; //静态方法 myClass.alertName = function() { alert(this.name); } 注:其中公有方法声明的部分采用的两种方式,在实际应用中一般采取一种方式就可以了,如果两种方式都要采用的话,应注意顺序,防止前面写的方法被清空或覆盖。