我需要创建一个二维数组来收集我的jsp中的值。为了填充二维数组我正在使用像这样的代码
<script language="JavaScript">
var row = 0;
var multiDimenArray = new Array();
</script>
<c:forEach var="items" items="${item}" varStatus="status">
............
<script language="JavaScript">
multiDimenArray [row] = new Array();
var column = 0;
row++;
</script>
<c:forEach var="nestedItems" items="${nestedItem}" varStatus="status">
............
<script language="JavaScript">
multiDimenArray [row][column] = "some value";
column++;
</script>
但是在第三个脚本块中,当我尝试分配值时,我得到一个JS错误,说明变量行是未定义的。是否可以在JS中的脚本块之间传递变量?
答案 0 :(得分:2)
你得到的是因为你在第三个脚本运行之前递增了行。
因此,当您尝试运行multiDimenArray [row][column] = "some value";
时,行实际上等于1而不是0。
您需要在分配列后移动row++
。