JavaScript面向对象的写法

定义一个Circle类,拥有成员变量r,常量PI,和计算面积的成员函数area();

 1 //第1种写法  
 2 function Circle(r) {  
 3       this.r = r;  
 4 }  
 5 Circle.PI = 3.14159;  
 6 Circle.prototype.area = function() {  
 7   return Circle.PI * this.r * this.r;  
 8 }  
 9   
10 var c = new Circle(1.0);     
11 alert(c.area());  
 1     //第2种写法  
 2     var Circle = function() {  
 3        var obj = new Object();  
 4        obj.PI = 3.14159;  
 5          
 6        obj.area = function( r ) {  
 7            return this.PI * r * r;  
 8        }  
 9        return obj;  
10     }  
11       
12     var c = new Circle();  
13     alert( c.area( 1.0 ) );  
1     //第3种写法  
2     var Circle = new Object();  
3     Circle.PI = 3.14159;  
4     Circle.Area = function( r ) {  
5            return this.PI * r * r;  
6     }  
7       
8     alert( Circle.Area( 1.0 ) );  
1     //第4种写法  
2     var Circle={  
3        "PI":3.14159,  
4      "area":function(r){  
5               return this.PI * r * r;  
6             }  
7     };  
8     alert( Circle.area(1.0) );  
原文地址:https://www.cnblogs.com/leesen/p/5387503.html