gpt4 book ai didi

javascript - 在数组中创建一个对象的多个实例

转载 作者:行者123 更新时间:2023-11-28 05:13:46 27 4
gpt4 key购买 nike

嘿,我正在开发一款涉及在游戏板上生成许多不同敌人的游戏。我创建了一个具有随机速度和位置的敌人对象,并将该对象推送到一个数组中。

现在我怎样才能使阵列中的敌人数量成倍增加?

const allEnemies = []; 

let bugSpeed = randomNumber(5, 25) * 10;
let bugRow = randomNumber(1, 4);
enemy = new Enemy(bugRow, bugSpeed);

allEnemies.push(enemy);

最佳答案

您可以在您的类上添加 multiply 方法,该方法接受一个数字并使用 Array.from 方法返回当前实例的克隆。

const allEnemies = [];
class Enemy {
constructor(row, speed) {
this.row = row;
this.speed = speed;
}

multiply(number) {
return Array.from(Array(number), () => {
return Object.assign(new Enemy, this);
})
}
}

const enemy = new Enemy(1, 3);

allEnemies.push(...enemy.multiply(5));
allEnemies[1].speed = 123;
console.log(allEnemies[1].multiply(3));
console.log(allEnemies)

关于javascript - 在数组中创建一个对象的多个实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50309769/

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