跳转到内容
返回首页
Tutorial

在 Android 上运行 JavaScript,用真正的 Node.js —— 零配置

在你的 Android 手机上,用真正内置的 Node.js 运行时运行 JavaScript —— 设备本地、 无需安装任何东西。能运行什么、它如何工作,以及它诚实的边界在哪里。

更新于:
1 min
作者 Pelayo Naredo
在 Android 上运行 JavaScript,用真正的 Node.js —— 零配置

在手机上运行 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,在你自己的设备上运行它。

本文背后的工具

代码编辑器

准备好试用 PocketCode 了吗?

下载应用,开始用手机编程。