YAML 解析器
解析、驗證 YAML 並將其轉換為 JSON(或反向轉換)。所有處理均在您的瀏覽器中完成,確保最高安全性與隱私。
如何使用 YAML 解析器
選擇模式
選擇「YAML 轉 JSON」或「JSON 轉 YAML」轉換模式
貼上內容
將您的 YAML 或 JSON 內容貼上到輸入欄位
轉換與檢視
點擊「驗證」檢查語法,或即時檢視轉換後的輸出
什麼是 YAML?
YAML(YAML 不是標記語言)是一種人類可讀的資料序列化標準,可與所有程式語言搭配使用,常用於設定檔。
主要特性
人類可讀
設計為人類可以輕鬆閱讀與撰寫,且額外負擔極低
廣泛使用
常用於 Docker、Kubernetes、CI/CD 等的設定檔
資料類型
支援字串、數字、布林值、列表、映射與多行內容
常見問題
本工具透過 js-yaml 函式庫支援 YAML 1.2 規範,涵蓋了目前使用中的絕大多數 YAML 文件,包括 Kubernetes 設定、Docker Compose 檔案與 CI/CD 管線。
是的。只需使用切換按鈕切換到「JSON 轉 YAML」模式,貼上您的 JSON 內容,工具就會將其轉換為具有適當縮排的 YAML 格式。
絕對安全。所有解析與轉換完全在您的瀏覽器中使用客戶端 JavaScript 完成。您的 YAML 與 JSON 資料不會被傳送到任何伺服器。
YAML 1.2 在設計上就是 JSON 的嚴格超集——每份合法的 JSON 文件同時也是合法的 YAML,而 JSON 更是 YAML 官方建議的互通子集。YAML 在此之上加入了註解、錨點、區塊純量與型別轉換。這層關係讓 YAML 與 JSON 之間的轉換可以無損進行,這正是本工具所執行的轉換。
&anchor 為節點命名,*alias 重複使用它,<<: 則把某個 mapping 合併進當前的 mapping。常見模式:先定義 defaults: &d 內含 retries 與 timeout,再寫 prod: { <<: *d, retries: 10 },即可繼承 timeout 同時覆寫 retries。這種去重機制源自 YAML 1.1,如今幾乎所有工具鏈都仍支援。
YAML 1.1 會把裸字串 NO 強制轉成布林值 false——no、on、off、yes、y、n 也一樣。於是國家代碼列表 [NO, SE, DK] 會悄悄變成 [false, SE, DK]。YAML 1.2 收緊了這個行為(只有 true 與 false 是布林值),但許多解析器仍保留 1.1 的做法,因此解法是加上引號:"NO"。本解析器會明確顯示每個純量實際被解析成的型別與值。
YAML 廣泛用於維運與 CI 設定:Kubernetes manifests、Docker Compose、GitHub Actions、GitLab CI、Ansible playbooks 與 OpenAPI 文件全都是 YAML。副檔名 .yml 與 .yaml 可以互換,其中 .yaml 是規範中的標準寫法。
使用 | 表示 literal block(換行原樣保留,適合放程式碼),使用 > 表示 folded block(換行摺疊為空格,段落合併)。兩者預設都只保留一個結尾換行;chomping 指示符可調整此行為:|- 刪除所有結尾換行,+ 則全部保留。鍵值下方的縮排深度即定義區塊的邊界。
相關工具
權威參考資料
本工具背後的第一手資料來源——官方標準與規範,而非二手摘要。