什么是Node.js
任何技术的诞生都不会凭空出现,都是有相应的历史起源、发展、和经历。
Node.js 是 JavaScript 运行平台
看到 Node.js 这个名字,初学者可能会误以为这是一个 JavaScript 应用,事实上,Node.js 采用 C++ 语言编写而成,是一个 JavaScript 的运行环境。
为什么采用 C++ 语言呢?据 Node.js 创始人 Ryan Dahl 回忆,他最初希望采用 Ruby 来写 Node.js,但是后来发现 Ruby 虚拟机的性能不能满足他的要求,后来他尝试采用 V8 引擎,所以选择了 C++ 语言。
既然不是 JavaScript 应用,为何叫.js 呢?因为 Node.js 是一个 JavaScript 的运行环境。
提到 JavaScript,大家首先想到的是日常使用的浏览器,现代浏览器包含了各种组件,包括渲染引擎、JavaScript 引擎等,其中 JavaScript 引擎负责解释执行网页中的 JavaScript 代码。
作为 Web 前端最重要的语言之一,JavaScript 一直是前端工程师的专利。不过,Node.js 是一个后端的 JavaScript 运行环境(支持的系统包括 *nux、Windows),这意味着你可以编写系统级或者服务器端的 JavaScript 代码,交给 Node.js 来解释执行,简单的命令类似于:
node helloworld.jsNode.js 与JavaScript的区别
本质
JavaScript 是一种web 前端 语言,主要用于WEB开发中,由浏览器解析执行
Node.js 是一个可以快速构建网络服务及应用的平台,是用JavaScript语言构建的服务平台,可用于 后端 建立服务器
区别
JavaScript 主要应用前端,是编程语言,客户端编程语言。(需要浏览器的javaScript解释器进行解释执行)。
Node.js 主要应用后端一个平台运行环境(一个基于 Chrome JavaScript 运行时建立的平台,它是对Google V8引擎进行了封装的运行环境)。
Node.js采用了Google Chrome浏览器的V8引擎,性能很好,同时还提供了很多系统级的API,如文件操作、网络编程等。浏览器端的JavaScript代码在运行时会受到各种安全性的限制,对客户系统的操作有限。相比之下,Node.js则是一个全面的后台运行时,为JavaScript提供了其他(服务端)语言能够实现的许多功能。
为什么使用Node.js
面对一个新技术,多问几个为什么总是好的。既然 PHP、Python、Java 都可以用来进行后端开发,为什么还要去学习 Node.js?至少我们应该知道在什么场景下,选择 Node.js 更合适。
总的来说,Node.js 适合以下场景:
实时性应用,比如在线多人协作工具,网页聊天应用等。
以
I/O为主的高并发应用,比如为客户端提供API,读取数据库等。流式应用,比如客户经常上传文件。
前后端分离
实际上前两者可以归结为一种,即客户端广泛使用长连接,虽然并发数较高,但其中大部分是空闲连接。
Node.js 也有它的局限性,它并不适合 CPU 密集型的任务,比如人工智能方面的计算,视频、图片的处理等。
怎么使用Node.js
Node.js 安装包及源码下载地址为:https://nodejs.org/en/download/。
Version: 16.14.0 (includes npm 8.3.1)
选择对应的操作系统安装文件下载并安装

打开控制台,键入:
node -v
# 16.14.0
node -v
# 8.3.1当你看到以上信息时,表示你已经成功安装了Node.js
案例
搭建Node.js项目框架
使用Node.js操作文件
使用Node.js搭建WEB服务器
使用Node.js操作MySQL数据库
使用Node.js搭建简易的服务端渲染应用