gpt4 book ai didi

javascript - 如何根据用户输入多次实例化一个类?

转载 作者:行者123 更新时间:2023-11-30 14:39:29 25 4
gpt4 key购买 nike

我正在尝试创建一个棋盘游戏,并希望根据用户提供的次数实例化 Human 类。显然,我正在尝试为每个对象分配不同的 ID,但为了实例化玩家数量,以下循环不起作用:

var question = prompt('how many players');
var numOfPlayers = parseInt(question);

class Human {
constructor (id) {
this.id = id;
this.health = 100;
this.hammer = false
this.knife = false;
this.sword = false;
this.baseballbat = false;
this.damage = 0;
this.location = {
x: Math.floor(Math.random() * 8),
y: Math.floor(Math.random() * 8)
}
}

moveTo(x, y){
this.location.x += x;
this.location.y += y;
}
}

var i;
for (i = 0; i < numOfPlayers; i++) {
const player = new Human(id = i);
}

最佳答案

首先,我希望我已经理解您在这里想要实现的目标。 “const player”的范围被限制在循环内。如果您希望能够在循环外访问它,您需要同样声明一个列表/数组。

代码可能是这样的:

var players = [];
for(let i = 0; i < numOfPlayers; i++) {
players.push(new Human(i));
}

注意:如果您不想在循环外使用变量“i”,您可以使用“let”关键字在“for”内部声明它,如上面的代码所示。

关于javascript - 如何根据用户输入多次实例化一个类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49897417/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com