微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

来自类函数的 Console.log

如何解决来自类函数的 Console.log

我想测试我的类中的函数是否返回给定的句子。但是如果我尝试使用 console.log 进行测试,它会返回 ReferenceError: rev is not defined。我做错了什么?

class store {
    constructor(revenue,workers) {
        this.revenue = revenue;
        this.workers = workers;
    }
}

class storeManager extends store {
    constructor(name) {
        super(revenue,workers);
        this.name = name;
    }

    rev() {
        return "The stores revenue is" + this.revenue;
    }
  
    hiredWorkers() {
        return "The store has" + this.revenue + "workers";
    }
};

console.log(rev())

我是一个相当新的程序员,所以如果这是一个愚蠢的问题,请耐心等待。

解决方法

类的全部意义在于提供一个模板来将功能捆绑到一个自包含的对象中,并且不是对所有内容都具有全局变量。

rev 是出现在类的实例上的方法。这不是全球性的。

你必须创建一个类的实例:

const myInstance = new StoreManager("some value for name");

(请注意,这将失败,因为您的构造函数调用 super() 并尝试传递构造函数方法中不存在的变量的值)。

...然后调用该方法:

const result = myInstance.rev();

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。