Arrays 访问perl数组元素的元素

Arrays 访问perl数组元素的元素,arrays,perl,Arrays,Perl,我有一个perl代码,它读取csv文件。它包含需要在前端更新的网格数据 首先,这里是perl代码,它读取数据并对其进行格式化,以便将数据推送到前端进行显示 my @array; for my $column ($csv->column_headers) { my $json = encode_json([ map { $_->{$column} } @$data ]); push(@array, "$json;"); } 最后的数据是@array,它被传递到前端ja

我有一个perl代码,它读取
csv
文件。它包含需要在前端更新的
网格
数据

首先,这里是perl代码,它读取数据并对其进行格式化,以便将数据推送到前端进行显示

my @array;
for my $column ($csv->column_headers) {
    my $json = encode_json([ map { $_->{$column} } @$data ]);
    push(@array, "$json;");
}
最后的数据是
@array
,它被传递到前端
javascript
code。
@array
的内容如下

["1","2"]; ["dd","ddd"]; ["wow","cool"]; ["HOLD","HOLD"];
此数据实际上是
4
列,列标题名称为
Id
Name
Comment
type
。所有这些数据都捆绑在
@array
中,并传递给
Javascript

var header=[];
header[0] = @array[0];
}   
如果我执行
console.log(头[0])
,上面的代码将显示下面的输出;这意味着它正在显示数组的第一个元素。但是我想显示第一个元素的元素

["1", "2"]
而它应该显示在输出下面

["1"]
简而言之,我想知道如何访问数组元素。我试着使用下面的代码,但没有成功。有人能推荐一下吗

var header=[];
    header[0] = @array[0][0];
我最终尝试使用下面的代码将这些数据放入网格中

for (var i=0;i<row_cnt;i++){
    var row={};
    row["Id"]=Id[i];
    row["Name"]=Name[i];
    row["Comment"]=Comment[i];
    row["type"]= type[i];
    data[i]=row;                           
}
现在,它在
网格的每个单元格中显示以下值

[object Object]
基于的答案,我认为您只需要在结尾处交换循环即可:

my $json = encode_json($data);
print "var data = $json;\n";

如果我没记错你以前的文章,你的数据不是已经是表格(CSV)格式了吗?无论你在这里得到了什么,都是一种表示表格数据的奇怪方式,我建议你重新思考一下你的数据结构。你到底想在这里做什么?@MattJacob-是的,我认为这个结构很奇怪(我已经用我最终想要实现的东西更新了我的问题。我想你想要的是一个对象数组。我会先用Perl构建它,然后将整个东西编码为JSON。实际上,
getline\u hr\u all
(from)获取99%的结果。在返回值上调用
encode_json
,Bob是你的叔叔。@MattJacob-我尝试这一点是因为我知道我越来越接近了。我在总体值上尝试了encode_json函数。例如,我的$json=encode_json([map{$\>{$column}}@$data]));在这句话之后,我再次编写了encode_json,但它不起作用。也许我没有正确编码。请您将答案发布在这里。去掉循环、
map
和数组引用,只需自己编码
$data
my $json = encode_json($data);
print "var data = $json;\n";