Javascript 是否可以在单击按钮时使用新名称创建新变量?

Javascript 是否可以在单击按钮时使用新名称创建新变量?,javascript,Javascript,我想知道当按下按钮时是否可以创建一个新变量。例如:如果我有一个名为enemy1的变量,并且按下按钮,那么是否可以创建一个名为enemy2的变量?如果这是个愚蠢的问题,我很抱歉。我想创建一个for循环,在这里我可以定义一个变量,该变量的名称根据“I”的不同而变化 最好使用数组(单击时添加新值)或对象(单击时添加新键)。我认为您应该使用数组,因此下面是一个示例: const敌人=[]; 阶级敌人{ 说(){ 返回“来吧,兄弟!!!”; } } document.querySelector(“#Cr

我想知道当按下按钮时是否可以创建一个新变量。例如:如果我有一个名为enemy1的变量,并且按下按钮,那么是否可以创建一个名为enemy2的变量?如果这是个愚蠢的问题,我很抱歉。我想创建一个for循环,在这里我可以定义一个变量,该变量的名称根据“I”的不同而变化

最好使用数组(单击时添加新值)或对象(单击时添加新键)。我认为您应该使用数组,因此下面是一个示例:

const敌人=[];
阶级敌人{
说(){
返回“来吧,兄弟!!!”;
}
}
document.querySelector(“#CreateForeign”).addEventListener('click',函数(事件){
const敌人=新敌人();
敌人。推(敌人);
console.log(敌人.length,'敌人说',敌人.speak());
},假)

创建敌人
您不需要动态变量,而是需要一个包含动态大小(动态敌人数量)的变量。下面是您需要的代码

Add Enenmy
var=[];
var enemyDiv=document.getElementById('enemiesContainer');
函数addenemy(){
var newEnenmy=‘敌人’+(敌人.长度+1);
敌人。推(纽恩米);
//以下内容将在您的页面中显示
enemyDiv.innerHTML=enemyDiv.innerHTML+'
'+newEnenmy+''; console.log(敌人);//显示在控制台中 }
听起来是使用数组的好地方。变量是通过使用
var
等声明来创建的。变量不是动态创建的,也不是通过名称动态引用的。这不是JS的工作方式。可能您想要的是使用新名称向某个对象添加属性。
    <button id='createEnemy' onclick='addEnenemy()'>Add Enenmy</button>
    <div id='enemiesContainer'> </div> 
    <script>
        var enemies = [];    
        var enemyDiv = document.getElementById('enemiesContainer');
        function addEnenemy() {
           var newEnenmy = 'enemy'+(enemies.length+1);
           enemies.push(newEnenmy);
           //following will show it in your page
           enemyDiv.innerHTML = enemyDiv.innerHTML + '<br/><label>'+newEnenmy+'</label>'; 
           console.log(enemies); //shows in console
        }
    </script>