<html> 
<body> 
<script language="javascript"> 
    function Circle(radius){ 
        this.r=radius; 
    } 
    Circle.PI=3.14159; 
    function Circle_area(){ 
        return Circle.PI*this.r*this.r; 
    }
    Circle.prototype.area = Circle_area; 
    Circle.max = new Function("a","b","return a.r>b.r?a:b");
    new Circle(0); 
    var c =new Circle(1.0); 
    c.r = 2.2; 
    var a = c.area(); 
    var x = Math.exp(Circle.PI); 
    var d = new Circle(1.2); 
    d.r = 2.0;
    var bigger = Circle.max(c,d);
    document.write("the area is "+a+" <br>"); 
    document.write("x="+x); 
</script> 
</body> 
</html> 

解决方案 »

  1.   

    No.1 Circle.max = Circle.max(); ....... 属性赋值给属性?
    No.2 var bigger(Circle.max(c,d)); 嘛意思?bigger是个函数吗?<script language="javascript">
        function Circle(radius){
            this.r=radius;
        }
        Circle.PI=3.14159;
        function Circle_area(){
            return Circle.PI*this.r*this.r;
        }
        new Circle(0);
        Circle.prototype.area=Circle_area;
        function Circle_max(a,b){
            if(a.r>b.r)
                return a;
            else
                return b;
        }
        Circle.max=Circle_max;
        var c=new Circle(1.0);
        c.r=2.2;
        var a=c.area;
        var x=Math.exp(Circle.PI);
        var d=new Circle(1.2);
        var bigger = Circle.max(c,d);
        document.write("the area is "+a+" <br>");
        document.write("x="+x);
    </script>