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」按钮,程序会读到文件结束。