0

我有一个来自 PHP API 的对象:

[Object { span=1,  caption="Particular",  master=true},
Object { span=5,  caption="Loan Class 1"},
Object { span=5,  caption="Loan Class 2"},
Object { span=5,  caption="Loan Class 3"}]

所需的输出将是:

## Particular   Loan Class 1    Loan Class 2  Loan Class 3 ##

我试图这样做:

var arrData = typeof JSONData != 'object' ? JSON.parse(JSONData) : JSONData;
for (var index in arrData[0]) {
row += index + ',';}
row = row.slice(0, -1);
CSV += row + '\r\n';

csv 的样子

## span   caption   master ##  

请帮助如何获取标题值以及是否有脚本可以在 excel 中输出此值,因为需要添加一些列合并。

4

2 回答 2

1

您应该遍历整个数组,而不仅仅是arrData[0]. 而且你不应该使用for (index in object),它只是设置index键,而不是值。然后要访问字幕,请使用.caption.

for (var i = 0; i < arrData.length; i++) {
    row += arrData[i].caption + ',';
}
于 2016-04-07T08:05:19.090 回答
0

对于标题部分,您可以使用:

var row = arrData.map(function(element) {
  return element.caption;
}).join(' ');

.map用于提取数组中所有元素的标题值。结果数组值与 连接.join。您可以将分隔符指定为.join函数的参数。

以 Excel 文件格式编写任何内容并非易事。除非您想要 CSV 格式的结果(您的代码示例暗示了这一点)。为此,您可能想看看这个答案

于 2016-04-07T08:52:39.430 回答