Node.js 是一个基于 Chrome V8 引擎的服务器端 JavaScript 运行时环境,提供文件系统、HTTP 服务等服务器级 API 和事件驱动的非阻塞 I/O 模型,使 JavaScript 能脱离浏览器执行后端任务。

Node.js 不是 JavaScript 的一种新语法,而是一个让 JavaScript 能在服务器端运行的运行时环境(runtime environment)。
Node.js 是什么
它基于 Chrome 的 V8 引擎(就是浏览器里执行 JS 的那个高性能引擎),但剥离了浏览器环境,加入了文件系统、网络、进程等服务器所需的能力。简单说:Node.js = V8 引擎 + 服务器级 API(比如读文件、开 HTTP 服务)+ 事件驱动的非阻塞 I/O 模型。
它怎么让 JS 跑在服务器上
传统 JavaScript 只能在浏览器里跑,依赖 DOM、window 等浏览器对象。Node.js 则提供了一套全新的全局对象和模块系统,比如:
global 替代了浏览器里的 window(没有 DOM,所以不能用 document.getElementById) require() 用来加载模块(如 fs、http、path),这是 Node.js 自己实现的模块系统(后来被 ES Module 部分兼容) fs 模块 可以读写文件,http 模块 可以创建 Web 服务器——这些在浏览器里是做不到的
一个最简例子:启动一个服务器
保存下面代码为 server.js,然后终端运行 node server.js:
立即学习“Java免费学习笔记(深入)”;
const http = require('http');const server = http.createServer((req, res) => { res.writeHead(200, { 'Content-Type': 'text/plain' }); res.end('Hello from Node.js!');});server.listen(3000);console.log('Server running on http://localhost:3000');
这时你访问 http://localhost:3000,就能看到响应——整个过程没用浏览器,纯靠 Node.js 执行 JS 代码完成。
关键点不是“JS 本身变了”,而是“运行环境变了”
JavaScript 语言标准(ECMAScript)没变,变的是它能调用哪些功能:
在浏览器里:能操作页面、发请求、监听点击,但不能直接读硬盘 在 Node.js 里:能读写文件、连接数据库、处理 HTTP 请求,但不能用 alert() 或 document
本质上,Node.js 把 JavaScript 从“客户端脚本语言”拓展成了“通用编程语言”。
基本上就这些。
以上就是什么是JavaScript的Node.js_它如何让JavaScript运行在服务器端呢的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1544582.html
微信扫一扫
支付宝扫一扫