什么是 NodeJS?

Node.js 是一种开源且跨平台的服务器端 JavaScript 运行时环境,以 Chrome 的 V8 JavaScript 引擎为基础,最初由 Ryan Dahl 创作并在 2009 年发布。

Node.js 是否可在 Windows 上工作?

是的。 对于使用 Node.js 开发应用,Windows 提供两种的不同环境:

如需帮助决定使用哪种环境,请查看应在 Windows 还是在适用于 Linux 的 Windows 子系统上安装?

可使用 NodeJS 执行什么操作?

Node.js 主要用于生成快速且可缩放的 Web 应用程序。 它使用事件驱动的非阻塞 I/O 模型,使其变得轻量和高效。 对于跨分布式设备运行的数据密集型实时应用程序来说,这是一个很好的框架。 以下是可以使用 Node.js 创建的应用的一些示例。

  • 单页应用 (SPA): 这类 Web 应用在浏览器中运行,每次用其获取新数据时无需重新加载页面。 示例 SPA 包括社交网络应用、电子邮件或地图应用、联机文本工具或绘图工具等。
  • 实时应用 (RTA): 这些 Web 应用使用户能够在创作者发布信息后立即接收该信息,而不要求用户(或软件)定期检查源以获取更新。 一些示例 RTA 包括即时消息传递应用或聊天室、可在浏览器中运行的在线多玩家游戏、联机协作文档、社区存储、视频会议应用。
  • 数据流式处理应用:此类应用(或服务)会在收到(或创建)数据/内容时立即发送它们,同时保持连接,以便根据需要继续下载后续数据、内容或组件。 示例包括音视频流式传输应用。
  • REST API:这类接口提供数据,供他人的 Web 应用进行交互。 例如,日历 API 服务可以提供音乐会现场的日期和时间信息,以供他人的本地活动网站使用。
  • 服务器端呈现的应用 (SSR) :此类 Web 应用可在客户端(浏览器/前端)和服务器(后端)上运行,允许动态页面显示任何已知内容(为其生成 HTML)并在未知内容可用时迅速进行抓取。 这些应用通常称为“同构”或“通用”应用程序。 SSR 使用 SPA 方法,因为它们不需要在每次使用时都重新加载。 不过,SSR 提供了一些重要性因人而异的优势,例如,让你的站点内容显示在 Google 搜索结果中,或者在 Twitter 或 Facebook 等社交媒体上分享应用链接时提供预览图像。 其潜在的缺点是需要 Node.js 服务器持续运行。 例如,为用户希望显示在搜索结果和社交媒体中的活动提供支持的社交网络应用可能得益于 SSR,但电子邮件应用作为 SPA 即可满足需求。 你还可以运行服务器呈现的非 SPA 应用(例如 WordPress 博客)。 如你所见,情况可能比较复杂,你需要确定重要事项。
  • 命令行工具:通过这些工具,可以自动执行重复性任务,然后将你的工具分发到大型 Node.js 生态系统。 cURL(即客户端 URL)是命令行工具的一个示例,用于从 Internet URL 下载内容。 cURL 常用于安装 Node.js 等工具(在本例中为 Node.js 版本管理器)。
  • 硬件编程:虽然不如 Web 应用常用,但 Node.js 也越来越多地被用于 IoT 领域,例如从传感器、信标、发射机、发动机或其他会生成大量数据的装置收集数据。 Node.js 可支持数据收集、数据分析、设备和服务器之间的通信往来以及基于分析的措施实施。 NPM 包含 80 多个包,用于 Arduino 控制器、Raspberry Pi、Intel IoT Edison、各种传感器和蓝牙设备。

后续步骤