Javascript可以动态创建多维数组吗

Javascript可以动态创建多维数组吗,javascript,arrays,Javascript,Arrays,我正在迭代一个JSON数组(从webworker AJAX调用接收) var dataReceived=JSON.parse(xhr.responseText)//JSON验证为ok //已收到数据。长度已验证 var dataProcessed=[]; 对于(变量i=0;i

我正在迭代一个JSON数组(从webworker AJAX调用接收)

var dataReceived=JSON.parse(xhr.responseText)//JSON验证为ok //已收到数据。长度已验证 var dataProcessed=[]; 对于(变量i=0;i 但是我得到了错误

数据处理[i]未定义


Javascript不会动态创建多维数组吗?

不会,Javascript不会动态创建多维数组。 你必须寻找边缘情况。循环的第一次迭代,以及 然后创建一个空数组

或者也可以使用| |运算符初始化数组

for (var i = 0; i < dataReceived.length; i++) {

dataProcessed[i] = []; // array

for ( var h = 0; h < dataReceived[i].length; h++) {
            dataProcessed[i][h] = []; // array
            dataProcessed[i][h][0]=((dataReceived[i][h][0])*30)-30;
            dataProcessed[i][h][1]=((dataReceived[i][h][1])*30)-30;
    }
}
postMessage(dataProcessed);
for(变量i=0;i
不,javascript不会动态创建多维数组。 你必须寻找边缘情况。循环的第一次迭代,以及 然后创建一个空数组

或者也可以使用| |运算符初始化数组

for (var i = 0; i < dataReceived.length; i++) {

dataProcessed[i] = []; // array

for ( var h = 0; h < dataReceived[i].length; h++) {
            dataProcessed[i][h] = []; // array
            dataProcessed[i][h][0]=((dataReceived[i][h][0])*30)-30;
            dataProcessed[i][h][1]=((dataReceived[i][h][1])*30)-30;
    }
}
postMessage(dataProcessed);
for(变量i=0;i
Javascript不会动态创建多维数组吗

不,您必须创建它:

for (var i = 0; i < dataReceived.length; i++) {
    dataProcessed[i] = [];        // <============= Here
    for ( var h = 0; h < dataReceived[i].length; h++) {
        dataProcessed[i][h] = []; // <============= And here
for(变量i=0;i
不,您必须创建它:

for (var i = 0; i < dataReceived.length; i++) {
    dataProcessed[i] = [];        // <============= Here
    for ( var h = 0; h < dataReceived[i].length; h++) {
        dataProcessed[i][h] = []; // <============= And here
for(变量i=0;i数据处理[i]=[];//是的,它是三维的,没有空的标题改变了它的三维的,没有空的标题改变了hanks,改变了问题的标题来帮助被发现,+1 hanks,改变了问题的标题来帮助被发现,+1 hanks,就像你在想如何解决,+1,并且会在一分钟内接受,或者像你一样你正在考虑如何解决,+1,并且会在一分钟内接受