Javascript 在JS类中调用静态函数

Javascript 在JS类中调用静态函数,javascript,class,static-methods,Javascript,Class,Static Methods,调用“Resource”类中的静态函数时遇到问题。因为它是一个静态函数,所以我尝试使用类名和函数名来调用它是否正确?(例如,Resource.add()-在下面代码的AddBtn部分下) 以下是我目前掌握的代码: var ResourcesArray = ["Blacksmith", "Farm", "Gold", "Herb", "Quarry", "Vineyard", &

调用“Resource”类中的静态函数时遇到问题。因为它是一个静态函数,所以我尝试使用类名和函数名来调用它是否正确?(例如,Resource.add()-在下面代码的AddBtn部分下)

以下是我目前掌握的代码:

var ResourcesArray = ["Blacksmith", "Farm", "Gold", "Herb", "Quarry", "Vineyard", "Wood"]

class Resource {
    constructor(name, amount) {
        this.name = name;
        this.amount = amount
        this.image = "images/" + this.name + "Icon.png"
    }
    
    static add() {
        this.amount += 1
    }
    subtract() {
        this.amount -= 1
    }
    trade() {
        console.log(this.name)
    }
}

function createNewResourceClassInstance() {
    for (i = 0; i < ResourcesArray.length; i++) {
        return ResourcesArray.map(res => new Resource(res, 0));
    }
}

function createResourceCards() {
    let resources = createNewResourceClassInstance();
    console.log(resources);

    for (i = 0; i < resources.length; i++){
        AddBtn = document.createElement("button")
        AddBtn.setAttribute("id", resources[i].name + "AddBtn")
        AddBtn.setAttribute("class", "btn btn-success add-btn")
        AddBtn.setAttribute("onClick", Resource.add())
        AddBtn.innerText = "+"
    }
    
}
createResourceCards()
var ResourcesArray=[“铁匠”、“农场”、“黄金”、“药草”、“采石场”、“葡萄园”、“木材”]
类资源{
建造商(名称、金额){
this.name=名称;
这个。金额=金额
this.image=“images/”+this.name+“Icon.png”
}
静态添加(){
这个数字为1
}
减去(){
这个数字为1
}
贸易(){
console.log(this.name)
}
}
函数createNewResourceClassInstance(){
对于(i=0;inewresource(res,0));
}
}
函数createResourceCards(){
让resources=createNewResourceClassInstance();
console.log(资源);
对于(i=0;i
当页面加载或点击AddBtn时,我在Chrome控制台中没有收到任何错误


提前感谢您的帮助

如果它影响class属性,它怎么可能是静态的?我不认为它应该是静态的。在我看来,你使它成为静态的,因为你不知道如何调用它。可能您应该删除static关键字,并将问题更改为“如何从我的
onClick()
处理程序中调用此
add()
方法?啊,好的,谢谢。静态选项是我在研究w3schools时遇到的,它说您可以使用类名“.function()”调用它。我可以编辑问题