javascript - 为什么 "Building"不是构造函数,而 "Resource"是?

标签 javascript jquery

function Resource(name = "undefined", count= 0) {
  this.name = name;
  this.count= count;
}

function Building(name = "undefined", count= 0, cost= 0) {
  this.name = name;
  this.count= count;
  this.cost= cost;
}

function NewBuilding(name) {
  Building[Buildz] = new Building(name);
  createBuildingBtn(name);
  Buildz++;
}

function NewResource(name) {
  Res[Resz] = new Resource(name);
  createResourceDiv(name);
  Resz++;
}

嗯,我有这段代码,“构建”几乎与资源完全相同。资源有效,但建筑无效。好吧,我希望你能帮助我。

最佳答案

您在同一范围内有一个名为 Building 的函数和一个名为 Building 的数组。将您的数组名称更改为其他名称即可。 Resource 之所以有效,是因为您为其附带的数组 (Res) 使用了不同的名称。

Builds = [];
Res = []
Buildz = 0;
Resz = 0;

function Resource(name = "undefined", count= 0) {
  this.name = name;
  this.count= count;
}

function Building(name = "undefined", count= 0, cost= 0) {
  this.name = name;
  this.count= count;
  this.cost= cost;
}

function NewBuilding(name) {
  Builds[Buildz] = new Building(name);
  Buildz++;
}

function NewResource(name) {
  Res[Resz] = new Resource(name);
  Resz++;
}

NewBuilding("Test");
NewResource("Test2");

console.log(Builds);

关于javascript - 为什么 "Building"不是构造函数,而 "Resource"是?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49943519/

相关文章:

javascript - 锚定在图像内

javascript - Jquery中达到数值后如何重置递增变量

javascript - 自定义 CKEditor 链接对话框

javascript - 尝试遍历 DOM,以便在单击特定 div 时播放独特的视频

javascript - JQuery:对话框不会触发自动完成

javascript - 删除类不会禁用与已删除类关联的事件监听器函数

javascript - 如何在搜索结果中只选择可见元素

javascript - 更改 div 的宽度以匹配 span 标签的宽度

jquery - 翻转时如何在 UL 中添加类并在 LI 中处于事件状态

javascript - 使用 jQuery 预加载目录中的所有图像