表格软件导出 CSV,API 说 JSON,于是两者之间的鸿沟需要不断跨越——从报表里导出的一列记录要当作请求体发出去,或者一个响应要落进别人会读的表格里。这个转换器双向工作,并且能正确处理那些让「按逗号切分」栽跟头的部分:带引号的字段、字段内部的逗号和换行、以及成对的双引号。它还能把值读成真实类型,让一列数字以数字而非字符串的形式抵达。整个转换都在浏览器里进行,这很重要,因为导出的表格通常塞满了客户数据。
不会。文件由你的浏览器在页面内读取和解析,什么都不会经过网络——当导出内容包含姓名、邮箱或订单记录时,这一点值得知道。
可以。解析遵循 RFC 4180:用双引号包裹的字段可以包含分隔符、换行,以及用成对双引号表示的一个字面引号——表格软件在单元格里存地址或整句话时,写出来的正是这个样子。
并没有丢——类型转换特意不去碰它们。像 01234 这样的值不是合法的普通数字,所以会保持为字符串。如果你希望所有值都保持文本,把类型转换整个关掉即可。
空的表头会变成 column1、column2 等,重复的名字会加上编号后缀。否则后面的列会悄悄覆盖前面的列,因为一个 JSON 对象不能有两个相同的键。
只能浅层转换。CSV 是一张扁平的网格,所以嵌套的对象或数组会以 JSON 文本的形式写在它所在的单元格里,而不是展开成多列。若需要每个字段独占一列,请先把结构拍平。