在线代码试运行
在浏览器里直接写代码、跑代码、看结果。支持 HTML / CSS / JavaScript / TypeScript / Vue3 / React / LESS / SVG / Canvas / Python / SQLite / Markdown / JSON / 正则 共 14 种运行时 —— 带语法高亮、行号、结构化控制台、错误定位、链接分享与本地保存, 打开即用,无需安装任何工具。
支持的运行时
所有运行时都在浏览器内完成,不需要后端编译服务;Python 与 SQLite 通过 WebAssembly 在本地加载(首次使用需下载运行时,之后走浏览器缓存)。
Web 前端
- HTML / CSS / JavaScript 最常用的前端三件套:结构、样式、行为分栏编写,即时预览
- HTML / CSS / TypeScript 把脚本换成 TypeScript,由转译器剥掉类型后运行
- Vue 3 Vue 3 全局构建版,模板 + setup 一把梭,无需构建工具
- React + JSX React 18 + JSX 即时转译,含 Hooks 示例
- LESS 预处理器 LESS 变量 / 嵌套 / 混合,编译结果直接上屏
- SVG 图形 直接书写 SVG 源码,所见即所得,适合调绘图与动画
- Canvas 绘图 全屏 Canvas + requestAnimationFrame 动画骨架
数据与文本
编程语言
- JavaScript 控制台 不碰 DOM,纯控制台模式,适合验证算法与语法
- TypeScript 控制台 TypeScript 剥类型后执行,类型错误不阻断运行
- Python 3 Pyodide 承载的 CPython 3.12,支持标准库与 print 输出
- SQL(SQLite) 真·SQLite 引擎(WASM),查询结果以表格呈现
能力一览
实时运行与预览
停止输入 0.7 秒自动运行(可关),也可 Ctrl/⌘ + Enter 手动触发;预览支持 375 / 768 / 1280 三种宽度预设与全屏。
结构化控制台
console.log / warn / error、未捕获异常、未处理的 Promise 拒绝都会汇总到控制台,重复日志自动折叠,console.table 与 SQL 结果直接渲染成表格。
分享即链接
代码经 deflate 压缩后放进 URL 的 # 锚点,打开链接即还原,不上传服务器、不设过期时间,也没有注册门槛。
不丢稿
编辑内容自动存本地草稿,切换语言时每种语言各留一份缓冲区;配合「我的代码」可长期保存,并支持导出 / 导入 JSON。
沙箱隔离
预览在 sandbox iframe 中运行,默认不具备同源权限,读不到本站 Cookie 与本地存储;需要时可显式开启(会有风险提示)。
零安装覆盖多语言
Web 三件套、Vue / React、LESS、SVG / Canvas,以及 Python(Pyodide)、SQLite(sql.js)、Markdown、JSON、正则,共 14 种运行时。
快捷键
示例速览
点击任意示例直接载入,代码可随意修改,改完点「运行」即可。
常见问题
代码会保存到服务器吗?
不会。代码只存在于你的浏览器里:编辑内容自动存本地草稿,「我的代码」也存在
localStorage;分享链接是把代码压缩后放在 # 锚点中,锚点内容不会随请求发送到服务器。
为什么预览里的 localStorage 不能用?
预览运行在 sandbox iframe 中且不含同源权限,因此没有存储访问能力 ——
这是为了防止分享链接里的代码读取本站的登录信息。确实需要时,可打开预览工具条上的
「允许同源」开关(仅对你自己信任的代码使用)。
Python 为什么要等一会儿?
Python 由 Pyodide(CPython 编译到 WebAssembly)承载,首次运行需下载约 10MB 运行时文件, 之后会命中浏览器缓存,基本是秒开。SQLite 同理(sql.js,约 1.2MB)。
分享链接太长怎么办?
链接长度取决于代码体积。超过 2000 字符时部分聊天工具会截断,建议改用「下载 HTML」 直接发送文件,或先保存到「我的代码」再在本机导出 JSON 备份。
怎样把预览结果分享给别人?
把 /try/embed 作为 iframe 地址即可嵌入到任何博客或文档里,
参数与主站一致(?f= 示例、?r= 运行时、#c= 代码载荷)。
