我有一个名为 TruckModel 的对象,它是之前在名为 milktruck.js 的 JavaScript 文件中定义的
我正在尝试创建这些 TruckModel 对象的数组,因为我不知道在任何给定时间,多人游戏的玩家进入和退出时需要多少 TruckModel 对象。
我知道我当前的代码无法正常工作,因为当我使用下面的 teleportToThat 函数时,模型不会显示。
通过在我的 index.html 文件中仅声明一个 TruckModel() 对象,然后使用 teleportToThat 来显示模型
这是我的代码,您发现我的做法有任何错误吗?
非工作版本:
var opponentTrucks = [];
for (var i = 0; i < markers.length; i++) {
opponentTrucks[i] = new TruckModel();
opponentTrucks[i].teleportToThat( lat, lng, heading );
}
工作版本:(不同之处在于我试图拥有不同数量的 TruckModel 对象)
在index.html文件中声明:
var model;
在 JavaScript 文件中声明:
model.teleportToThat( lat, lng, heading );
这是整个 JavaScript 文件:
最佳答案
如果您希望能够通过数字索引查找对象,您需要一个数组,而不是一个普通对象:
var opponentTrucks = [];
你所拥有的可以工作,但是如果你想像对待一个数组一样对待它,就没有理由不使用一个真正的数组。
编辑 - 目前还不清楚到底问题是什么。这行在这里:
opponentTrucks[i].teleportToThat( lat, lng, heading );
那应该做什么?它是从哪里调用的? “我”的值(value)是多少?如果您只是在循环后面添加该语句,那么它不会起作用。如果您希望为数组中的每个函数调用“teleportToThat()”函数,那么您应该将该函数调用放在“for”循环内。 p>
关于javascript - 我声明这个 Javascript 变量的方式有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6191962/