Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 数组在JS中的行为非常奇怪_Javascript_Arrays - Fatal编程技术网

Javascript 数组在JS中的行为非常奇怪

Javascript 数组在JS中的行为非常奇怪,javascript,arrays,Javascript,Arrays,好的,我在Javascript中有一个简单的for循环,它将创建一个数字数组,我需要这样做,这样我就可以交换它们来创建随机位置。但无论如何,这是代码 var aliveMonsters = []; var deadMonsters = 0; for( var i = 0; i < monsterAmount; i++ ) { if( monsters[i].hp > 0 ) { v

好的,我在Javascript中有一个简单的for循环,它将创建一个数字数组,我需要这样做,这样我就可以交换它们来创建随机位置。但无论如何,这是代码

            var aliveMonsters = [];
    var deadMonsters = 0;
    for( var i = 0; i < monsterAmount; i++ )
    {
        if( monsters[i].hp > 0 )
        {
            var place = i - deadMonsters;
            var placed = i - deadMonsters;
            aliveMonsters[place] = placed;
        }
        else
        {
            deadMonsters -= 1;
        }
        //console.log(i);
    }
            console.log(aliveMonsters);
这是正确的,但是当其中一个死亡(0、1甚至2)时,数组就会变成这样

[0, 3: 3] 
此代码在玩家每次移动时都会被调用,在怪物死亡(HP设置为0)之前一直正常工作。有人知道为什么会这样吗

这是一张图片,不要担心显示未定义的数组。
放置死怪+=1更正了错误

你是不是想键入
[0,3,3]
而不是
[0,3:3]
?不,[0,3:3]是我得到的
[0,3:3]=>语法错误:意外标记:
不,这就是我在谷歌Chrome控制台中得到的
死怪+=1
[0, 3: 3]