如何将一列添加到1d json数组并将其保存到文件?

时间:2020-11-11 10:01:30

标签: javascript arrays json

上下文

我正在尝试将数组保存到文本文件。

我的数组是一个js变量arrR(例如):

[-0,0.0016,0.0034,0.005,0.0067,0.0082,0.0103,0.0116,0.0135,0.0154,0.017]

下面的函数将数组保存在文本文件中:

$("#saveB").click(function () {
var diff  = 3;
var json = JSON.stringify(arrR);
var downloadLink = document.createElement("a");
var blob = new Blob(["\ufeff", json]);
var url = URL.createObjectURL(blob);
downloadLink.href = url;
downloadLink.download = "data.txt";
document.body.appendChild(downloadLink);
downloadLink.click();
document.body.removeChild(downloadLink);
arrR=[];
});

这很好用。

我想做什么

代替.txt文件,例如:

[-0,0.0016,0.0034,0.005,0.0067,0.0082,0.0103,0.0116,0.0135,0.0154,0.017]

我想要一个.txt或a.csv文件,该文件是:

data measured at xx
0; -0
3; 0.0016
6; 0.0034
9; 0.005
12;0.0067
15; 0.0082
18;0.0103
21; 0.0116
24; 0.0135
27; 0.0154
30; 0.017

其中:

文件的第二列是arrR

第一列是一个数组,其中所有元素均为0,3,6(差为diff),

标题是当前时间。

有简单的方法吗?

非常感谢

1 个答案:

答案 0 :(得分:1)

您可以更改

var json = JSON.stringify(arrR);

const header = `data measured at ${(new Date()).toUTCString()}\n`
var json = header + arrR.map((value, index) =>
       `${diff*index}; ${value}`).join('\n');