Javascript错误:对象未定义

时间:2012-05-20 17:15:12

标签: javascript

我使用javascript跟踪Html文件。这给了我“testCircle未定义”的错误。 kinldy帮我解决这个问题。

<html>
    <body>
    <h1> Testing Object-based Javascipt </h1>
    <script type="text/javascript">
    function mycircle(x,y,r)
    {
    this.xcoord=x;
    this.ycoord=y;
    this.radius=r;
    this.area = getArea;
    this.getCircumference = function () { return (2 * Math.PI * this.radius ) ; };
    }
   function getArea()
   {
   return (Math.PI * this.radius * this.radius);
   }
        var testCircle = mycircle(3,4,5);

   window.alert('The radius of my circle is ' + testCircle.radius);

   </script>

   </body>
   </html>

提前致谢....

2 个答案:

答案 0 :(得分:5)

var testCircle = mycircle(3, 4, 5);

应该是

var testCircle = new mycircle(3, 4, 5);

使用new关键字调用构造函数。如果未使用关键字,则指定mycircle函数的返回值。由于mycircle不包含return语句,因此返回值为undefined - 这是您在代码中分配给testCircle的内容。

答案 1 :(得分:0)

我得到的错误是未定义的半径。如果是这样的话。如果你打算在没有新构造函数的情况下使用它,你需要在mycircle的末尾返回它。

updated: this fiddle here

修复:链接断开