如何在js中正确调用原型中的函数

时间:2018-07-03 00:51:36

标签: javascript

如何正确调用预测试中的函数?

我收到此错误:未捕获的TypeError:b.testmenow不是函数

<button type="button" onclick="display(a,b,c,d)">display</button>

1 个答案:

答案 0 :(得分:1)

您需要通过添加new pretest(111)接受对n的输入。 然后必须使用n实例化prebase构造函数。

    var pretest = function (n) {
        var MAX_NUM = 250.0;
    
        var prebase = function (NEW_NUM) {
            this.NEW_NUM = NEW_NUM ? NEW_NUM : true;
        };
    
        prebase.prototype.testmenow = function () {
            return this.NEW_NUM;
        };
        
        return new prebase(n);
    };
    
    var b = pretest(111);
    console.log(b.testmenow());

奇怪的是,您在这里有两个构造函数,您肯定可以使用一个构造函数。

正如Felix灵巧地提到的那样,您可以呼叫pretest(111)而不是new pretest(111)