JSON 轉 TOON 轉換器可即時將標準 JSON 資料轉換為 TOON(Token-Oriented Object Notation)——這是一種現代化的、Token 化的資料格式,專為可讀性、緊湊性和機器效率而設計。它還允許您透過縮排、鍵折疊和分隔符號選項來自訂 TOON 的編碼方式。
此基於瀏覽器的工具在本機運行,並顯示 JSON 與 TOON 之間的詳細比較,包括 Token 計數和空間節省情況。
什麼是 TOON 格式?
TOON 代表 Token-Oriented Object Notation——一種受 JSON 啟發、人類可讀的語法,它將結構化資料表示為有序的 Token 列表。它最大限度地減少了重複,並支援型別化資料、註釋和中繼資料的靈活擴充。
TOON 是開源的,定義在 github.com/toon-format/toon。
JSON 轉 TOON 轉換的工作原理
當您貼上 JSON 時,該工具會將其解析為抽象語法樹(AST),並將該結構序列化為 TOON Token。陣列、物件和基本型別使用 @toon-format/toon 庫被映射為有序的、自描述的 Token。
所有處理都在本機進行——無需上傳。您還可以複製產生的 TOON 程式碼,或直接在結果表中比較其大小和 Token 效率。
可設定的輸出設定
該轉換器提供了用於自訂 TOON 輸出格式的高階控制項:
- 縮排: 控制巢狀資料中每個層級使用的空格數。可選擇 0(緊湊)、2 或 4 個空格以獲得更好的可讀性。
- 鍵折疊: 將具有單一巢狀鍵的物件折疊為較短的點分隔形式(例如,使用
data.metadata.items而不是巢狀縮排)。'安全'模式確保可讀性,同時不會扁平化複雜結構。 - 分隔符號: 定義陣列元素和行內值如何分隔(逗號、分號或豎線)。對於與其他序列化風格保持一致非常有用。
- 允許重複項: 如果您的輸入資料有意包含重複鍵,則在 TOON 輸出中保持它們不變。
這些參數允許開發者根據用例微調 TOON 輸出的緊湊性、相容性或可讀性。
為什麼使用 TOON 而不是 JSON?
- 緊湊性: 去除冗餘語法和引號,減小高達 70% 的大小。
- 可擴充性: 支援註釋和中繼資料,用於更豐富的結構。
- 速度: 對人類和機器都更易於解析。
- 可自訂性: 可調整的縮排、鍵折疊和分隔符號。
- 互通性: 設計為與 JSON 管道共存。
範例:JSON 與 TOON 對比
// JSON
{
"user": { "name": "Alice", "age": 25 }
}
// TOON (安全折疊 + 逗號分隔符號)
user{name,age}: Alice,25
常見問題解答
這個轉換器有什麼作用?
它將任何有效的 JSON 輸入轉換為 TOON(Token-Oriented Object Notation),顯示您的結構化資料在緊湊的、Token 化格式下的樣子。
縮排、鍵折疊和分隔符號設定有什麼作用?
縮排改變巢狀層級的顯示方式。鍵折疊將長的巢狀鏈折疊為點分隔鍵以實現簡潔。分隔符號控制行內陣列或值組如何分隔(例如,逗號或豎線)。這些影響可讀性,但不影響底層結構。
TOON 是 JSON 的替代品嗎?
不是。TOON 是一種實驗性的緊湊表示法,旨在補充 JSON——對於視覺化、壓縮和探索未來的序列化技術非常有用。
轉換是在本機進行的嗎?
是的。所有處理都在您的瀏覽器中完成;您的資料永遠不會離開您的裝置。
我可以比較大小和 Token 使用情況嗎?
是的。轉換後,該工具會顯示一個 JSON 與 TOON 的對比表,展示近似的 Token 數、位元組大小和節省百分比。
可以從 TOON 轉換回 JSON 嗎?
是的。TOON 庫支援反向解析,可以從 TOON 文字重建有效的 JSON 結構。
我為什麼要關注 TOON?
TOON 提供了一種視覺化和最佳化結構化資料的新方法。它對於對緊湊資料表示法感興趣的開發者、教育工作者和資料工程師非常有用。
參考資料
- TOON 專案 : : TOON 規範與文件 (2025) )2025( 來源: GitHub 倉庫https://github.com/toon-format/toon