大家好,我是前端理想哥!今天开始,我将为大家带来一系列的 Node.js 学习视频,帮助大家更好地入门 Node.js。话不多说,今天我们先从最基础的问题开始 —— Node.js 到底是什么?
Node.js 到底是什么?
来,先看看官网怎么定义的:
Node.js是一个开源且跨平台的JavaScript运行时环境;Node.js基于Chrome V8引擎运行JS,性能非常出色Node.js使用了事件驱动、非阻塞式 I/O 模型。
哇!听起来很厉害对吧?但是看完之后,感觉有点云里雾里,是不是每个字都懂,合起来却让你脑袋发懵?
别着急,理想哥来帮你翻译翻译!
其实,简单来说,在 Node.js 中写 JavaScript,和在浏览器中写 JavaScript 基本没啥区别。
唯一的区别就是,Node.js 没有浏览器里的那些 API(比如 document、window),但它有自己的新增 API!比如用来读写文件、操作网络请求的 API,还有控制服务器的 API。
嗯... 可以这么理解:在浏览器里,你可以用 JavaScript 控制浏览器,而在 Node.js 中,你可以用 JavaScript 控制整个计算机。是不是很酷?
至于官网上提到的那三点,我们后面的视频会深入带大家逐个讲解,今天先简单过。
好了,废话少说,咱们直接上手写一个 Node.js 的经典示范——Hello World!看这个代码:
import { createServer } from 'node:http';
const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World');
});
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
这段代码中,我们先引入了一个 Node.js 的核心模块 http,然后用 createServer() 方法创建了一个 HTTP 服务器。我们会监听3000端口和127.0.0.1主机名。
当有请求过来时,我们会先设置设置 res.statusCode = 200 代表响应成功,然后设置Content-Type 返回头,最后,把Hello World 返回参数添加到end()函数中。你会看到当服务器启动后,控制台会打印出它正在监听的地址 http://127.0.0.1:3000/。
是不是简单明了?接下来你只需要保存这个文件为 server.mjs,然后在命令行里运行 node server.mjs,一个简洁的 Node.js 服务就搭建完成了!
好啦,这就是我们 Node.js 系列课程的第一课——了解 Node.js 是什么。下节课,我们将深入探讨 Node.js 和浏览器之间到底有啥区别,别走开,精彩继续!
如果你也对 Node.js 感兴趣,记得关注理想哥,我们一起深入探索。