node.js与前端开发实战 | 青训营笔记

50 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 9 天,今天学习的是node.js,将学习的内容记录下来,以便时时巩固记忆。

什么是Node.js

Node.js是一个JavaScript的运行环境,可以快速构建网络服务及应用的平台,是JavaScript语言构建的服务平台,主要用于后端。

Node.js的优势:

1、学习曲线平缓,开发效率较高。

2、运行效率接近于常见的编程语言。

3、社区生态丰富及工具链成熟。

4、与前端结合的场景会有优势。

Node.js应用场景

1、单页面、多Ajax请求应用,因为前端有大量的异步请求,需要后端有极高的响应速度。

2、基于Node.js开发Unix命令行工具,Node.js可以产生大量子进程,并以流的方式输出。

3、Node.js在Web应用中会充分利用流式数据的特点,构建应用。

Node.js 运行时结构

主要包括三个特点:1、异步IO 2、单线程 3、跨平台

异步I/O:Node.js执行I/O操作时候,会在响应返回后恢复操作而不是阻塞线程并占用额外内存等待。

单线程:单线程不用考虑线程状态同步的问题,还能比较高效地利用系统资源。但是阻塞时会产生更对的负面影响。

跨平台:Node.js可以跨平台,整体实现成本低。

Node.js REPL

Node.js REPL(交互式解释器) 表示一个电脑的环境,类似 Windows 系统的终端或 Unix/Linux shell,我们可以在终端中输入命令,并接收系统的响应。

Node.js回调函数:我们可以一边读取文件,一边执行其他命令,在文件读取完成后,我们将文件内容作为回调函数的参数返回。这样在执行代码时就没有阻塞或等待文件 I/O 操作。这就大大提高了 Node.js 的性能,可以处理大量的并发请求。