在 Android 上运行 JavaScript,用真正的 Node.js —— 零配置
在你的 Android 手机上,用真正内置的 Node.js 运行时运行 JavaScript —— 设备本地、 无需安装任何东西。能运行什么、它如何工作,以及它诚实的边界在哪里。
在手机上运行 JavaScript,通常意味着一个浏览器控制台,或者一个把你的代码送到别处执行的网站。两者都不是
真正的运行时。PocketCode 内置了一套真正的 Node.js,就打包在应用里,并在设备上
运行你的 .js 文件 —— 即时,无需安装任何东西。
真正的 Node.js,在设备上运行
这不是把 JavaScript 塞进 webview 的小把戏。PocketCode 内置了一套货真价实的 Node.js 运行时,以原生二进制
形式存在(64 位 ARM 手机上为 v25.3.0),并在本地执行你的脚本。打开一个 .js 文件,点击 Run,你得到的就是 Node 真实的行为:
console.log、console.error及其同伴会流入一个真正的控制台。- 现代语言特性 ——
async/await、模块、生成器、解构、可选链 —— 全都能用,因为这是真正的引擎,而不是一个子集。 - 退出码和堆栈跟踪会显示在 Run 面板中,而在 Node 上运行的 JavaScript 是那里唯一带 Debug 按钮的语言。
因为执行是在本地进行的,你的代码不会被送到任何人的运行器上。(应用在登录时需要联网;已有会话时打开应用无需联网;之后,你的代码就在设备上运行。带参数运行中的允许 WASM 引擎访问网络开关针对的是 WebAssembly 语言,不包括 Node。)
它擅长什么
一台口袋里的 Node.js 是真正实用的:
- 编写脚本与自动化 —— 转换文本、处理 JSON、生成文件。
- 学习和练习 JavaScript —— 跟着课程走、刷算法,或者灵感一来就立刻测试一段代码片段。
- 给逻辑做原型 —— 勾勒一个函数、一个解析器、一个小型状态机,然后立即运行它。
再搭配上编辑器可一键安装的 TypeScript/JavaScript 语言服务器(用于自动补全)和内置的内联诊断
—— 后者会提示 == 与 ===、var 与 let/const 之类的问题(参见**代码编辑器指南**)—— 以及给你顺手写的任何 HTML/CSS 用的 Emmet 命令,
在手机上写 JavaScript 就不再像是一种妥协了。
诚实的边界
- 没有 npm 的 Node。
npm和npx并未内置。它用来运行你自己的脚本和模块,而不是一套包管理器工作流。原生扩展(.node文件)同样无法加载。内置终端的 PATH 里有node,同样没有npm。 - 手机上的解释器加 JIT。 对脚本和练习而言足够快;繁重、持续的计算会落后于桌面端。
- 不是设备端构建农场。 它运行 JavaScript;它并不为编译其他生态而打包一整套原生工具链。
在这些边界之内,它就是真正的语言,而不是玩具。
众多语言之一
JavaScript 是首次启动就内置于应用中的语言之一 —— 与 TypeScript(运行在同一个 Node 上)、 Python、C、Ruby、PHP、Java 和 Kotlin 并列 —— Lua、Go 和 Rhai 则是可选包。在 **在 Android 上运行 16 种语言的代码**中查看完整阵容。
你的手机用真正的 Node.js 运行真正的 JavaScript —— 私密、即时。
PocketCode 已在 Google Play 上架。获取 PocketCode,在你自己的设备上运行它。
代码编辑器