我目前正试图将Javascript数组导出到CSV文件中,以便将其加载到Excel中。
数组是这样的:
var data = [
[
['timestamp1', 'value1'],
['timestamp2 ', 'value2']
],
[
['timestamp1', 'value1'],
['timestamp2 ', 'value2']
],
[
['timestamp1', 'value1'],
['timestamp2 ', 'value2']
]
];
因此,我想要的是这样的东西:
t1 v1 t1 v1 t1 v1
t2 v2 t2 v2 t2 v2
我已经做了一些研究并尝试了一个示例:
var csvContent = '';
var dataString;
data. (function (infoArray) {
dataString = infoArray.join(';');
csvContent += dataString + "\n";
});
但是它似乎不适用于这种多维数组。
有人知道可行的解决方案吗?
非常感谢。
答案 0 :(得分:0)
那当然是可行的。在您的情况下,要使其困难一点的是它是三维数组。 好吧,基本上,您只需要两个for循环并从元素中组成一个字符串。
var data = [
[
['timestamp1', 'value1'],
['timestamp2', 'value2']
],
[
['timestamp1', 'value1'],
['timestamp2', 'value2']
],
[
['timestamp1', 'value1'],
['timestamp2', 'value2']
]
];
var csvContent = "";
for (var a = 0; a < data[0].length; a++) {
if (a != 0) {
csvContent += "\n";
}
for (var b = 0; b < data.length; b++) {
csvContent += data[b][a][0] + "," + data[b][a][1] + ",";
}
}
console.log(csvContent);