Javascript 创建多维数组
Javascript create multidimensional array
我尝试创建一个 4 维数组。我动态填充它并在另一个函数中使用它的内容。但是内容是空的。代码下面有错误吗?
var datas = []; // day number of a week
for(var i = 0; i < 7; i++) {
var size = 24*60/timeInterval;
datas[i] = [];
for(var j = 0; j < size; j++) {
var size2 = allCoords.length / 2;
datas[i][j] = [];
for(var k = 0; k < size2; k++) {
datas[i][j][k] = [];
}
}
}
我测试下面的例子:
function foo1()
{
datas[0][0][0].push(10);
}
function foo2()
{
document.getElementByID('result').innerHTML = datas[0][0][0];
}
我只看到,,,,,,,
.
我认为主要问题是您使用 getElementByID
而不是 getElementById
获取要显示结果的元素。还要确保您的元素具有 innerHTML
属性 来写入结果,或者使用 value
.
我使用 <textArea id="result"></textArea>
编写了以下示例并生成了一个调用 foo1();foo2();
onClick
的按钮,它对我有用。
在示例中,我为 timeInterval
和 allCoords.length
使用随机值。
另请注意,您需要一个 4 维数组,但您创建的是一个 3 维数组。
var timeInterval = 60;
var allCoords = { length : 1};
var datas = []; // day number of a week
for(var i = 0; i < 7; i++) {
var size = 24*60/timeInterval;
datas[i] = [];
for(var j = 0; j < size; j++) {
var size2 = allCoords.length / 2;
datas[i][j] = [];
for(var k = 0; k < size2; k++) {
datas[i][j][k] = [];
}
}
}
function foo1()
{
datas[0][0][0].push(10);
}
function foo2()
{
document.getElementById('result').value = datas[0][0][0];
}
<textArea id="result"></textArea>
<input type="button" value="foo" onclick="foo1();foo2();"/>
希望这对您有所帮助,
我尝试创建一个 4 维数组。我动态填充它并在另一个函数中使用它的内容。但是内容是空的。代码下面有错误吗?
var datas = []; // day number of a week
for(var i = 0; i < 7; i++) {
var size = 24*60/timeInterval;
datas[i] = [];
for(var j = 0; j < size; j++) {
var size2 = allCoords.length / 2;
datas[i][j] = [];
for(var k = 0; k < size2; k++) {
datas[i][j][k] = [];
}
}
}
我测试下面的例子:
function foo1()
{
datas[0][0][0].push(10);
}
function foo2()
{
document.getElementByID('result').innerHTML = datas[0][0][0];
}
我只看到,,,,,,,
.
我认为主要问题是您使用 getElementByID
而不是 getElementById
获取要显示结果的元素。还要确保您的元素具有 innerHTML
属性 来写入结果,或者使用 value
.
我使用 <textArea id="result"></textArea>
编写了以下示例并生成了一个调用 foo1();foo2();
onClick
的按钮,它对我有用。
在示例中,我为 timeInterval
和 allCoords.length
使用随机值。
另请注意,您需要一个 4 维数组,但您创建的是一个 3 维数组。
var timeInterval = 60;
var allCoords = { length : 1};
var datas = []; // day number of a week
for(var i = 0; i < 7; i++) {
var size = 24*60/timeInterval;
datas[i] = [];
for(var j = 0; j < size; j++) {
var size2 = allCoords.length / 2;
datas[i][j] = [];
for(var k = 0; k < size2; k++) {
datas[i][j][k] = [];
}
}
}
function foo1()
{
datas[0][0][0].push(10);
}
function foo2()
{
document.getElementById('result').value = datas[0][0][0];
}
<textArea id="result"></textArea>
<input type="button" value="foo" onclick="foo1();foo2();"/>
希望这对您有所帮助,