function myConstructor(message){ this.myMessage = message; //class public Member variable var separator ='_'; //class private memeber variable var myOwner = this; function alertHH(){ // private class member function alert("alertHH"); } function alertMM(){ // private class member function alert("alertMM"); alertHH(); } this.alertMessage = function (s){ //public function alert(s); } this.appendToMessage = function(s){ //public function this.myMessage += separator+s; this.alertMessage(this.myMessage); alertMM(); } } myConstructor.prototype = { propertyA:"valueA", propertyB:"valueB" } // 必须new之前写 var mc = new myConstructor("MC"); myConstructor.prototype.add=function(){alert("add()");}; //add class public function myConstructor.prototype.cc="cc"; //new 之前之后无所谓 mc.appendToMessage("appendToMessage"); mc.alertMessage("sssss"); mc.add(); alert(mc.myMessage); alert(mc.cc); alert(mc.propertyA); alert(mc.propertyB);