解析和序列化 CSV
CSV 是一种数据序列化格式,旨在为类似表格的应用程序提供可移植性。
import { parse, stringify } from "jsr:@std/csv";
要解析 CSV 字符串,您可以使用标准库的 CSV 解析函数。该值将作为 JavaScript 对象返回。
let text = `
url,views,likes
https://deno.land,10,7
https://deno.land/x,20,15
https://deno.dev,30,23
`;
let data = parse(text, {
skipFirstRow: true,
strip: true,
});
console.log(data[0].url); // https://deno.land
console.log(data[0].views); // 10
console.log(data[0].likes); // 7
在我们的 CSV 格式不同的情况下,我们也可以通过代码提供列。
text = `
https://deno.land,10,7
https://deno.land/x,20,15
https://deno.dev,30,23
`;
data = parse(text, {
columns: ["url", "views", "likes"],
});
console.log(data[0].url); // https://deno.land
console.log(data[0].views); // 10
console.log(data[0].likes); // 7
要将 JavaScript 对象列表转换为 CSV 字符串,您可以使用标准库的 CSV 字符串化函数。
const obj = [
{ mascot: "dino", fans: { old: 100, new: 200 } },
{ mascot: "bread", fans: { old: 5, new: 2 } },
];
const csv = stringify(obj, {
columns: [
"mascot",
["fans", "new"],
],
});
console.log(csv);
// mascot,new
// dino,200
// bread,2