【发布时间】:2022-10-15 03:17:49
【问题描述】:
目前我正在使用 javascript 获取单个数组并输出到 CSV:
var token_array = [112, 364, 236, 234]
var csv = "";
for (let row of token_array) {
for (let col of row) {
csv += col
}
csv += "\r\n";
}
var myBlob = new Blob([csv], { type: "text/csv" });
所以,这行得通,CSV的输出是:
112
364
236
234
但是,如果我有多个要输出到 CSV 的数组,每个数组都是它们自己的列,该怎么办?例如:
var token_array = [112, 364, 236, 234]
var first_name = [Tim, Kim, Tom, Amy]
var last_name = [Berson, Law, Stalle, Erwin]
var DOB = [11091986, 08061976, 02031967, 12121980]
var sex = [M, M, M, 234]
预期的 CSV 输出:
112 Tim Berson 11091986 M
364 Kim Law 08061976 M
236 Tom Stalle 02031967 M
234 Amy Erwin 12121980 F
我想知道我需要如何修改代码中的 for 循环才能产生这个结果。
【问题讨论】:
-
我会使用一个普通的
for循环,因为我需要索引。也就是说,任何时候发生这种情况都表明缺少对象/抽象。不过,我对当前代码的内部循环有点困惑。 -
有没有更好的方法来编写这段代码?
-
“更好”在什么意义上?我会(a)创建一个封装对象(而不是“并行”数组)和(b)使用 CSV 库,因为 CSV 很烦人。
-
你有一个可以指点我的工作例子吗?提前致谢
-
请参阅Javascript equivalent of Python's zip function 并使用javascript 标签查询
serialize to csv之类的内容。
标签: javascript csv for-loop