如何通过Javascript函数参数传递数组

如何通过Javascript函数参数传递数组,javascript,arrays,Javascript,Arrays,我在stackoverflow(和()以及其他几个站点)上发现了几个类似的线程,但我要么不理解它们,要么它们没有完全回答我的问题,要么我不知道如何在代码中实现它 我有以下代码,可以根据一些数组为游戏创建地图: function createMap(level) { var map = document.getElementById('map'); mapWidth = parseInt(level[0]); mapHeight = parseInt(level[1]);

我在stackoverflow(和()以及其他几个站点)上发现了几个类似的线程,但我要么不理解它们,要么它们没有完全回答我的问题,要么我不知道如何在代码中实现它

我有以下代码,可以根据一些数组为游戏创建地图:

function createMap(level) {
   var map = document.getElementById('map');
   mapWidth = parseInt(level[0]);
   mapHeight = parseInt(level[1]);
   map.innerHTML = '';
   rowNumber = 1;
   tileID = 1;
   var consoleHelp = level[7];
   console.log(k+' and value is '+consoleHelp);
   k = 1;
for (k = 1; k <= mapHeight; k++) { // repeat below loop until specified height is reached
 for (k = 1; k <= mapWidth; k++) { // create a row of tiles based on the specified width of the array
    console.log('Row '+k+' created')
    if (rowNumber == 1) {
        k++;
    }
    else {
        k--;
    }
    if (level[k] == 'w') {
        map.innerHTML += '<span id="'+rowNumber+'-'+tileID+'">desert<image class="tiles" src="desert.png"></span>';
    }
    else if (level[k] == 'g') {
        map.innerHTML += '<span id="'+rowNumber+'-'+tileID+'"><image class="tiles" src="grass.png"></span>';
    }
    else {
        console.log('crap dis did not work');
        var consoleHelp = level[k];
        console.log(k+' and value is '+consoleHelp);
    }
    if (rowNumber == 1) {
        k--;
    }
    else {
    k++;
    }
    tileID++
  }
  rowNumber++
  level = level + '_1';
  map.innerHTML = "<br>";
}
spawnTile();
}
我的问题是我打电话来

createMap('map_beginning_1')

没有发生任何事情。没有错误,但没有其他事情发生。我做了一个测试,看看它得到了什么,“level[7]”的值是“I”,而“level”的值是“a”,这是“map\u start\u 1”中字符的位置。有人能给我解释一下如何或是否有可能通过Javascript函数参数可变地传递数组,以及如何做吗?如果不可能,你能为我尝试做的事情提供一些替代方案吗?Javascript更可取,但如果我必须的话,我可以使用Jquery。

尝试
createMap(map\u\u 1)
。丢失
(引号),因为您试图传递数组,但实际上传递的是字符串。

尝试
创建映射(映射开始1)
。丢失
(引号),因为您试图传递数组,但实际上传递的是字符串。

您已将字符串传递到函数中,而不是变量。请尝试以下操作,删除单引号

createMap(map_beginning_1);

您已将字符串而不是变量传递到函数中。请尝试以下操作,删除单引号

createMap(map_beginning_1);

你传递的是字符串,而不是数组。那么我如何传递数组而不是字符串呢?你传递的是字符串,而不是数组。那么我如何传递数组而不是字符串呢?谢谢,我觉得我没有注意到这一点很傻。它起作用了:)我会在10分钟内接受你的答案,如果可以的话。谢谢,我觉得我没有注意到这一点很傻。它成功了:)我会在10分钟内接受你的回答,如果可以的话。