无法在函数javascript中传递数组
我正在学习javascript,我想在一个函数中填充一个数组,并在第二个函数中将其作为参数传递。我有以下代码,但由于某些原因,它不工作无法在函数javascript中传递数组,javascript,arrays,Javascript,Arrays,我正在学习javascript,我想在一个函数中填充一个数组,并在第二个函数中将其作为参数传递。我有以下代码,但由于某些原因,它不工作 function gameplay(tmp) { for (var i = 0; i < tmp.length; i++) { if (xTrans >= tmp[0] - 1 && xTrans < tmp[0] && zTrans <
function gameplay(tmp) {
for (var i = 0; i < tmp.length; i++) {
if (xTrans >= tmp[0] - 1
&& xTrans < tmp[0]
&& zTrans <= tmp[1] - 1
&& zTrans > tmp[1])
{
//some code here
}
}
}
function fillMap() {
var bounds = new Array();
for (var y = 0; y < map.length; y++) {
for (var x = 0; x < map[0].length; x++) {
if (map[y][x] == '1') {
bounds[length] = 4 * x;
length++;
bounds[length] = -y - 4 * y;
length++;
}
}
}
return bounds;
}
提前感谢。您可能想尝试一下,以确认当您有一个清晰而明显的输入时会发生什么:
function fillMap() {
var map = [[0]];
这将为您提供以下输出:[4,-5]
一些潜在问题
- 地图没有在任何地方定义
- 长度在任何地方都没有定义
- xTrans没有在任何地方定义
- zTrans在任何地方都没有定义
- 根据我所见,似乎不太可能满足if条件:
xTrans>=tmp[0]-1&&xTrans
- 您最好使用
边界。按
而不是
边界[length]=$val
for(var y=0;y从您的注释来看,似乎并没有填充数组,因为您有一些填充数组的条件。
因此,首先检查您的条件是否已满。您是否收到某种错误消息,或者输出/结果是否与您期望的完全不同?请确保您的代码运行正常。
变量未定义。我假设您想要长度
相反。如果您不熟悉JS中的数组,我建议您学习一个教程:。定义了长度,当我尝试打印数组时得到的消息是它是空的。边界。推送(…)
defined在哪里?在for(var y=0;I尝试了push和for语句,正如您所说,其他变量都已定义,但仍然存在相同的问题map
function fillMap() { var map = [[0]];