本文详细讲解如何在本地计算机脱离浏览器独立运行JavaScript脚本,包括Node.js的官方下载、LTS版本与Current版本的选择依据、安装向导中PATH配置等关键步骤、环境变量生效验证与常见报错排查,以及编写并运行第一个本地JS脚本的完整流程。
怎么在本地运行JavaScript脚本:Node.js下载安装与环境配置教程
时间:2026-11-05
浏览:644
文章目录
node 脚本文件名.js,即可立刻运行脚本。本文将按照实际操作次序,详细讲解 Node.js 的版本选取、安装过程中的关键配置项、环境变量验证排错以及首个本地脚本的编写与执行。
一、理解核心对象:为什么在本地运行需要 Node.js
许多刚接触编程的读者习惯于在 HTML 页面中通过 <script> 标签书写 JavaScript,并在浏览器中查看运行效果。这是因为浏览器内置了 JavaScript 解析引擎(如 Chrome 的 V8、Firefox 的 SpiderMonkey)。但在浏览器中,JavaScript 受到严格的安全沙箱机制限制,无法自由读写电脑本地硬盘中的文件,也无法直接监听系统网络端口或管理操作系统进程。
Node.js 并不是一门新的编程语言,而是一个基于 Chrome V8 引擎构建的 JavaScript 本地运行时环境。 它将原本只能在浏览器中运转的 V8 引擎剥离出来,封装了跨平台异步 I/O 驱动库 Libuv,并提供了诸如文件读写(fs)、路径处理(path)、操作系统状态查询(os)以及进程交互(process)等核心模块。
这意味着,在本地运行 JavaScript 时,代码获得了直接调用计算机底层硬件与操作系统的能力。无论是编写自动化文件批量重命名脚本、搭建 Web 后端接口,还是开发命令行小工具,都可以直接使用 JavaScript 编写。需要特别注意的是:在本地环境中并不存在 window 或 document 对象,如果代码中调用了 DOM 操作(例如 document.getElementById),在本地执行时会直接抛出未定义异常。
二、Node.js 下载与版本选择策略
获取 Node.js 的唯一正规渠道是其官方站点:nodejs.org。进入官网首页后,通常会看到两个醒目的下载按钮:LTS(Long Term Support,长期支持版)与 Current(当前最新发布版)。
版本选择的判断依据非常明确:
- 强烈推荐选择 LTS 版本(如 v20.x 或当前推荐的偶数稳定版本): 该版本经过充分的社区回归测试,稳定性高,且生命周期长达数年。npm 生态中的绝大多数第三方库和企业级框架都优先对 LTS 版本进行兼容适配。日常学习、生产项目与工具开发均应首选 LTS。
- 谨慎选择 Current 版本: 该版本包含 Node.js 最前沿的语法特性与正在孵化的试验性 API,但更新频率高,部分依赖库可能尚未跟进适配,容易在后续安装第三方模块时遇到构建错误。它仅适用于想要体验特定 ECMAScript 新特性的测试环境。
操作系统安装包格式说明:Windows 用户建议直接下载 64 位的 .msi 安装包;macOS 用户根据自身芯片类型(Apple Silicon M 系列芯片选择 ARM64,Intel 芯片选择 x64)下载 .pkg 安装程序;Linux 用户则通常建议使用系统包管理器或官方预编译二进制包。
三、逐步安装向导与核心选项配置
下载完成后,双击安装包启动图形化向导。整个安装过程大多数页面只需保持默认并点击“Next”,但在以下几个关键节点必须格外注意。
1. 确认安装路径
在 Windows 系统中,默认目标路径为 C:\Program Files
odejs\。除非系统盘空间极其匮乏,否则建议保留此默认路径。若确需更换盘符,请确保所选目录路径中不包含中文字符和特殊空格,以防某些底层原生模块在解析物理路径时发生异常。
2. 核心配置:Custom Setup 中的 “Add to PATH”
在自定义安装组件(Custom Setup)界面,列表中会列出 Node.js runtime、npm package manager、Online documentation shortcuts 以及 Add to PATH。
此处必须确认 “Add to PATH” 处于勾选启用状态(默认通常已勾选)。 该选项的作用是在安装过程中,自动将 Node.js 的安装目录追加写入到操作系统的系统环境变量 PATH 中。如果去掉了这一项,安装完成后操作系统将无法自动识别 node 和 npm 命令,导致读者必须手动去系统高级设置中补齐变量。
3. 选项区分:Tools for Native Modules
向导后续会弹出一个名为“Tools for Native Modules”的复选框,提示是否自动安装 Python 与 Visual Studio Build Tools 等用于编译原生 C++ 扩展的构建工具。
建议普通初学者保持未勾选状态。 勾选该选项会在安装结束后唤起 PowerShell 自动下载庞大的编译套件,耗时漫长且将占用数 GB 的磁盘空间。对于单纯运行本地 JavaScript 脚本、学习语言基础或使用主流纯 JS 库的读者而言,并不需要这套编译工具链。
四、环境变量验证与 PATH 运作原理
安装向导点击“Finish”结束后,并不意味着可以直接在原来的窗口里输入命令。请务必执行一个关键动作:如果系统在安装前已经打开了命令行终端(CMD、PowerShell 或 Terminal),请将其完全关闭,并重新打开一个全新的终端窗口。
1. 执行环境验证命令
在刚打开的新终端中,分别执行以下两条命令,以确认 Node.js 执行引擎与随附的 npm 工具链已经正确就绪:
node -v npm -v
v20.18.0 10.8.2
如果两条命令均正常回显了类似 v20.x.x 和 10.x.x 的具体版本号,则说明 Node.js 与 npm 已经成功接入本地开发环境。
2. PATH 环境变量到底在做什么
读者可能会好奇:为什么我们在电脑的任意文件夹目录下打开终端,敲入 node,操作系统就能准确找到并运行 node.exe 呢?
背后的核心正是 PATH 环境变量。当用户在终端输入一个程序名称时,操作系统首先在当前工作目录查找,如果没找到,就会逐一遍历 PATH 变量中注册的每一个文件夹路径。一旦在某一个目录中发现了匹配的可执行文件,便立即将其载入内存运行。
若执行 node -v 报错,通常由以下两种原因导致:
原因一(最普遍):终端会话未刷新。请完全关闭所有打开的 CMD、PowerShell、VS Code 内置终端或 macOS 终端,重新打开再试。
原因二:安装时未成功注入环境变量。排查方法:在 Windows 搜索栏输入“环境变量”,打开“编辑系统环境变量” → 点击“环境变量”按钮 → 在“系统变量”中找到并双击 Path,检查列表中是否存在 C:\Program Files
odejs\。若不存在,手动点击“新建”并填入该路径,一路点击“确定”保存后,重新开启终端测试。
五、编写并运行你的第一个本地 JavaScript 脚本
环境配置无误后,就可以正式进入脚本执行阶段。在本地运行 JavaScript 主要有两种形式:交互式 REPL 模式 与 脚本文件执行模式。
1. 交互式 REPL 模式(即时求值)
在终端中直接敲入 node 并按回车,光标前会出现一个 > 提示符。此时便进入了 Node.js 自带的交互式编程环境(Read-Eval-Print Loop)。读者可以在其中直接输入任意 JavaScript 表达式进行即时计算:
> 100 * 24 + 50 2450 > const greeting = "Hello Local JavaScript!"; undefined > greeting.toUpperCase(); 'HELLO LOCAL JAVASCRIPT!' > .exit
想要退出 REPL 模式,只需在终端输入 .exit 并回车,或者连续按下两次键盘快捷键 Ctrl + C 即可回到常规系统命令行。
2. 脚本文件执行模式(实际日常开发)
在日常开发中,代码都是保存在磁盘文件中的。下面通过一个能够直观体现本地硬件与系统交互的完整脚本来进行演示。
步骤一:新建项目目录与脚本文件。在本地任意磁盘创建一个空文件夹(例如 D:\learn-js\ 或 macOS 用户主目录下的 ~/learn-js/),在该文件夹中新建一个文本文件,命名为 app.js。
步骤二:编写代码。用文本编辑器(如 VS Code、Notepad++ 或系统自带文本编辑)打开 app.js,输入以下内容并保存:
// 引入 Node.js 内置的核心模块
const os = require('os');
const path = require('path');
console.log("==========================================");
console.log("恭喜!JavaScript 脚本已在本地成功运行!");
console.log("==========================================");
// 演示本地系统特有的交互能力(浏览器中无法直接获取)
console.log("【运行平台】:", os.platform(), os.arch());
console.log("【系统空闲内存】:", (os.freemem() / (1024 * 1024)).toFixed(2), "MB");
console.log("【当前脚本完整物理路径】:", __filename);
console.log("【当前终端工作目录】:", process.cwd());
console.log("【当前 Node 引擎版本】:", process.version);
步骤三:在终端中定位并执行脚本。打开终端,使用 cd 命令切换到 app.js 所在的文件夹,然后输入 node app.js 运行代码:
cd /d D:\learn-js node app.js
========================================== 恭喜!JavaScript 脚本已在本地成功运行! ========================================== 【运行平台】: win32 x64 【系统空闲内存】: 7420.50 MB 【当前脚本完整物理路径】: D:\learn-jspp.js 【当前终端工作目录】: D:\learn-js 【当前 Node 引擎版本】: v20.18.0
六、本地运行 JavaScript 的重要注意事项与规则
从浏览器转移到本地环境时,由于宿主环境的更迭,有几个核心规则需要开发者建立清晰的边界认知:
1. 模块化规范:CommonJS 与 ES Module
在上述示例中,我们使用了 const os = require('os');,这是 Node.js 历史上原生采用的 CommonJS (CJS) 规范。
如果读者习惯使用现代前端标准的 import / export 语法(ES Module,简称 ESM),直接在 app.js 里书写 import os from 'os'; 会触发语法报错:SyntaxError: Cannot use import statement outside a module。
要在本地顺利运行 ESM 模块语法,有两种推荐做法:
- 方式 A(单文件生效):将脚本文件的后缀名从
.js改为.mjs,Node.js 会自动将其识别为 ES Module。 - 方式 B(项目全局生效):在代码所在目录下新建一个
package.json文件,在其中写入{ "type": "module" },此时该目录下所有的.js文件都将默认以 ESM 模式运行。
2. 相对路径陷阱:process.cwd() 与脚本实际路径
在本地使用 fs 模块读取文件(例如 fs.readFileSync('./data.json'))时,很多人会遇到文件找不到的错误。
这是因为:本地脚本中的相对路径 ./,是相对于你在终端中敲下命令时所处的工作目录(即 process.cwd()),而不是脚本文件本身的存放位置。如果想要始终以脚本所在文件夹为基准寻址,请结合 __dirname(在 CommonJS 中)或 import.meta.dirname(在现代 ESM 中)配合 path.join() 来拼装绝对路径。
七、全流程总结与自检速查清单
在本地运行 JavaScript 并不是一项复杂的任务,只要理清了“运行时宿主”、“安装配置项”与“终端调用规则”,整个流程是完全确定且易于维护的。
在每一次遇到执行问题或准备新建本地 JS 工具时,建议依照下表进行 4 步快速对照自检:
| 自检环节 | 核验动作与标准表现 | 异常排查建议 |
|---|---|---|
| 1. 运行时就绪 | 终端执行 node -v 能够正常回显版本号(如 v20.x.x) |
检查 PATH 变量中是否包含 node 安装目录;务必关闭并重新打开终端。 |
| 2. 包管理器就绪 | 终端执行 npm -v 能够正常回显包管理器版本 |
如果 node 有回显但 npm 丢失,通常是安装过程被杀毒软件拦截,建议重新运行向导 Repair 修复。 |
| 3. 文件路径定位 | 在脚本所在目录执行 node 文件名.js,或输入准确的相对/绝对路径 |
若报 Cannot find module,说明终端当前目录与指定文件名不匹配,用 dir 或 ls 核对文件是否存在。 |
| 4. API 兼容性 | 代码内部使用 globalThis / process / os,没有调用 window / document |
若报错 ReferenceError: document is not defined,检查是否误将前端浏览器 DOM 代码直接放到本地执行。 |
掌握了在本地运行 JavaScript 的方法后,你就可以借助丰富的 npm 生态库,将原本局限于浏览器网页的 JavaScript 技能延伸到本地文件自动化批处理、爬虫脚本编写、CLI 命令行工具开发以及高并发后端接口开发等广阔领域。
实用工具推荐
绿化、压缩、噪点和虚拟水印,自由调节做旧程度。
选择画质和输出格式,预览压缩前后的大小。