我尝试制作Javascript对象时未捕获的引用错误

时间:2017-10-29 03:35:51

标签: javascript oop object constructor

我试图为添加问题生成器创建一个构造函数但是当我运行我的代码时,我得到了#34; Uncaught ReferenceError:firstNum未定义"

function GenAddProb()
{
    this.firstNum = returnRandomInt(1,10);
    this.secondNum =  returnRandomInt(1,10);
    this.ans = firstNum+secondNum;
}

构造函数的编写方式有问题吗?根据我在教程中看到的内容,在构造函数中使用它之前,我不必将firstNum和secondNum定义为变量。

1 个答案:

答案 0 :(得分:4)

  

this.ans = firstNum + secondNum;

正如它所说,firstNum没有定义。您的意思是this.ans = this.firstNum + this.secondNum吗?

  

从我在教程中看到的内容,我不必在构造函数中使用它们之前将firstNum和secondNum定义为变量。

如果这是你的意思,你不需要定义this。在构造函数的上下文中,this是您正在构造的对象。但是如果你想创建和使用局部变量,你需要定义它们。