最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用純JS實現(xiàn)JSON轉CSV的技巧全攻略

 更新時間:2025年06月26日 08:32:25   作者:燭陰  
在數(shù)據(jù)處理和導出方面,JSON 和 CSV 格式是兩個常見的角色,今天,我們將介紹如何在純 JavaScript 中,利用開源庫 @json2csv/plainjs 輕松實現(xiàn)從 JSON 轉換到 CSV,幫助你高效處理數(shù)據(jù),需要的朋友可以參考下

引言

在數(shù)據(jù)處理和導出方面,JSON 和 CSV 格式是兩個常見的角色。JSON(JavaScript Object Notation)以其良好的可讀性和靈活性被廣泛應用于數(shù)據(jù)存儲和傳輸,而CSV(Comma-Separated Values)則因其簡潔易讀、方便導入到各種表格軟件中而深受歡迎。今天,我們將介紹如何在純 JavaScript 中,利用開源庫 @json2csv/plainjs 輕松實現(xiàn)從 JSON 轉換到 CSV,幫助你高效處理數(shù)據(jù)。

一、什么是 @json2csv/plainjs?

@json2csv/plainjsjson2csv 的一種輕量版(純原生 JS 實現(xiàn)),無需依賴任何第三方庫或環(huán)境(比如 Node.js 特定模塊),非常適合瀏覽器或純 JS 環(huán)境下使用。

主要功能:

  • 將 JSON 對象或數(shù)組轉換成 CSV 格式
  • 支持自定義字段和格式
  • 簡單易用,無復雜配置

二、基礎用法:將簡單 JSON 轉為 CSV

示例:轉換一組用戶數(shù)據(jù)

import { Parser } from '@json2csv/plainjs';

// 示例數(shù)據(jù)
const myData = [
    { name: 'John', age: 30, city: 'New York' },
    { name: 'Jane', age: 25, city: 'Los Angeles' },
    { name: 'Doe', age: 35, city: 'Chicago' }
];

// 基本轉換示例
try {
    const basicOpts = {};
    const basicParser = new Parser(basicOpts);
    const basicCsv = basicParser.parse(myData);
    console.log('基本轉換結果:');
    console.log(basicCsv);
} catch (err) {
    console.error('基本轉換出錯:', err);
}

輸出:

"name","age","city"
"John",30,"New York"
"Jane",25,"Los Angeles"
"Doe",35,"Chicago"

說明

  • parse() 方法將數(shù)組中的每個對象作為一行
  • 默認會提取所有對象的所有鍵作為字段名

三、定制轉換:選擇特定字段

我們可以通過 fields 選項,指定輸出哪些字段,保證輸出內容的可控性。

示例:只導出 name 和 email

import { Parser } from '@json2csv/plainjs';

const users = [
    { name: 'Alice', age: 30, email: 'alice@example.com' },
    { name: 'Bob', age: 25, email: 'bob@example.com' }
];

const customOpts = { fields: ['name', 'email'] };
const customParser = new Parser(customOpts);
const csv = customParser.parse(users);
console.log(csv);

輸出:

name,email
Alice,alice@example.com
Bob,bob@example.com

說明

  • 只提取配置中列出的字段,支持自定義順序

四、深入:使用復雜參數(shù)定制格式

@json2csv/plainjs 提供多種選項,幫助你控制輸出格式。

1. 自定義字段標題

import { Parser } from '@json2csv/plainjs';

const users = [
    { name: 'Alice', age: 30, email: 'alice@example.com' },
    { name: 'Bob', age: 25, email: 'bob@example.com' }
];

const fields = [
    { label: '姓名', value: 'name' },
    { label: '年齡', value: 'age' }
];

const customOpts = { fields };
const customParser = new Parser(customOpts);
const csv = customParser.parse(users);
console.log(csv);

輸出:

姓名,年齡
Alice,30
Bob,25

2. 添加換行符和其他格式控制

除了基本功能,你還可以通過選項調整字段分隔符、換行符等。

import { Parser } from '@json2csv/plainjs';

const users = [
    { name: 'Alice', age: 30, email: 'alice@example.com' },
    { name: 'Bob', age: 25, email: 'bob@example.com' }
];

const fields = [
    { label: '姓名', value: 'name' },
    { label: '年齡', value: 'age' }
];

const options = {
    fields,
    delimiter: ';', // 使用分號作為字段分隔符
    eol: '\r\n'     // 換行符使用 Windows 風格
    
};

const customParser = new Parser(options);
const csv = customParser.parse(users);
console.log(csv);

五、實戰(zhàn)案例:導出嵌套JSON

假設你的 JSON 中包含嵌套對象,如何處理?

import { Parser } from '@json2csv/plainjs';

const data = [
    {
        id: 1,
        name: 'Alice',
        address: { city: 'Beijing', street: 'Chao Yang' }
    },
    {
        id: 2,
        name: 'Bob',
        address: { city: 'Shanghai', street: 'Pudong' }
    }
];

// 通過指定字段的路徑,將嵌套對象扁平化
const fields = [
    { label: 'ID', value: 'id' },
    { label: '名稱', value: 'name' },
    { label: '城市', value: 'address.city' },
    { label: '街道', value: 'address.street' }
];

const customParser = new Parser({fields});
const csv = customParser.parse(data);
console.log(csv);

輸出:

ID,名稱,城市,街道
1,Alice,Beijing,Chao Yang
2,Bob,Shanghai,Pudong

結語

到此這篇關于利用純JS實現(xiàn)JSON轉CSV的技巧全攻略的文章就介紹到這了,更多相關JavaScript JSON轉CSV內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論

普格县| 互助| 前郭尔| 玛纳斯县| 依安县| 彭山县| 永德县| 宁德市| 扶沟县| 页游| 临湘市| 清远市| 阜宁县| 东宁县| 东兴市| 富平县| 郯城县| 通化市| 天门市| 铜山县| 泸水县| 中山市| 永丰县| 阿坝| 牟定县| 林州市| 通州市| 巴东县| 巴林右旗| 临洮县| 卓尼县| 青海省| 西宁市| 丹寨县| 龙里县| 定安县| 化德县| 乌拉特前旗| 成安县| 湖南省| 松桃|