Go 線上編譯器
我的工具
暫無工具
我的工具
暫無工具
如何線上執行和測試 Go 程式碼
- 1
輸入或貼上 Go 程式碼
在編輯器中編寫包含 func main 的 Go 程式碼,或直接選擇預設示例快速開始。這個線上執行器適合做小片段測試、除錯和學習演示。
- 2
按需拆分多個檔案
同一個 main 包可以拆成多個 .go 檔案,點選執行會整體執行。也可以上傳檔案或匯入 ZIP,把現有片段搬進來。
- 3
執行並檢查輸出
點選「執行」後,程式碼會透過本地 Go WASM 執行時即時執行。右側面板分別顯示標準輸出和錯誤資訊,程式等待輸入時會出現行內輸入框。
- 4
分享或複用片段
你可以複製輸出、恢復歷史記錄,或生成分享連結,讓其他人直接開啟並復現同一段 Go 程式碼。
功能概覽
直接在瀏覽器裡執行 Go 程式碼、試驗 goroutine 和 channel、測試程式碼片段。基於本地 WASM 解釋執行,無需伺服器或本地環境,程式碼不上傳。
工具描述
免費 Go 線上編譯器和 Playground,在瀏覽器執行 Go 程式碼。支援 goroutine 併發演示、同包多檔案專案、檔案上傳與互動式輸入,預置常用第三方包,程式碼和資料不上傳伺服器。
最近更新
能力清單
- 基於 Go WASM 執行時在瀏覽器本地執行 Go 程式碼,無需上傳資料。
- 支援 goroutine、channel、select 等 Go 併發原語,直接體驗併發程式設計。
- 標準庫開箱即用:fmt、strings、strconv、sort、time、encoding/json、errors 等均可直接 import。
- 預置精選第三方包(uuid、yaml.v3、errgroup、decimal),import 即用無需安裝。
- 支援同一個 main 包拆成多個原始檔,配合檔案工作區整體執行,可上傳檔案與匯入 ZIP。
- 互動式控制檯輸入:bufio.Scanner(os.Stdin) 等標準用法可直接逐行讀取輸入。
- 死迴圈一鍵停止,立即回到可執行狀態。
- 執行歷史儲存在本地,可隨時恢復、重跑和對比程式碼片段。
- 支援生成可分享連結,方便和同事復現同一段 Go 程式碼。
使用者回饋
前往回饋
使用者回饋
相關工具
常見問題
這個工具更像 Go online compiler 還是 Go code runner?
大多數使用者搜尋 Go online compiler,真實需求其實是一個能立即執行程式碼並清楚展示結果的 Go code runner。這個工具在瀏覽器裡即時解釋執行並流式展示輸出,重點是小片段的執行與除錯,而不是完整工程構建。
程式碼是在伺服器上執行嗎?
不是。執行時基於 WebAssembly 在你的瀏覽器本地執行,普通使用場景下程式碼無需上傳到遠端伺服器,適合私密的程式碼片段測試。
這個工具支援哪些 Go 版本?
執行時基於 Go 1.22 的標準庫構建,語言特性覆蓋到 1.21 並支援大部分常用泛型語法。個別最新語法特性可能不被支援,遇到報錯時可以換成等價的經典寫法。
這個工具支援哪些第三方包?
當前預置了 github.com/google/uuid、gopkg.in/yaml.v3、golang.org/x/sync/errgroup 和 github.com/shopspring/decimal,import 即用。其他第三方包暫不支援,標準庫無需任何操作即可使用。
適合線上測試哪些 Go 程式碼?
這個工具適合測試語法、goroutine 與 channel、介面、錯誤處理、切片與對映、JSON 編解碼、字串處理、time 包等核心片段。依賴 CGO、本地檔案系統、網路監聽(如 http.ListenAndServe)或資料庫的完整服務端場景不在目標範圍內。
這個工具能執行哪些標準庫?
fmt、strings、strconv、sort、time、math、errors、encoding/json、sync、bufio、io 等常用標準庫都可以直接 import 使用。
Go 程式碼執行有時間限制嗎?
沒有強制超時。長時間執行的程式碼會一直執行,必要時點選「停止」立即終止,停止後可以馬上再次執行。
這個工具的輸入怎麼用?
程式呼叫 bufio.NewScanner(os.Stdin) 或 fmt.Scan 等讀取輸入時,輸出流末尾會出現行內輸入框,逐行提交即可。結束輸入按「EOF」按鈕,程式會讀到檔案結束。