Nodejs API 与 JavaScript Web API 接口

Fid*_*ida 2 javascript node.js asp.net-web-api

我一直在徘徊,寻找答案或讨论,我知道为什么要创建nodejs。它将JS从浏览器中取出,使其能够成为与文件、IO和网络操作等系统资源交互的主流语言。如果我们研究一下 JavaScript Web API,他们是不是在做与 Nodejs 相同的事情。假设我们在 Nodejs 中有 fs 模块来与文件交互,并且我们有一个Web api 接口。我们有很多API接口,例如读取蓝牙或系统电池等。我不知道我们是否可以在Web API中进行IO或发出网络请求。那么 Nodejs 与这些 Web API 到底有什么不同呢?

MDN 上的JavaScript 完整APIS页面。

谢谢。

Jos*_*eam 5

您提到:

我们有一个Web api接口用于[在浏览器中读取文件]

小心这个声明。浏览器中的JavaScript无法随意直接访问您的文件系统(用户必须明确允许浏览器使用特定文件,例如通过选择带有元素的文件input)。然而,使用node.js,您可以直接访问文件系统(fs例如使用模块)。

如果我们研究一下 JavaScript Web API,他们不是在做与 Nodejs 相同的事情吗?

这是一个经典的“维恩图”可视化。当然,浏览器中的 JavaScript 和 Node.js 在很多领域都有交叉,因为它们是同一种语言。

以下是一些差异的列表(无论如何想象,它并不能包含所有差异):

  1. 您可以使用 node.js 运行服务器(祝您在浏览器中运行服务器好运)
  2. 您可以使用node.js直接访问文件系统(无法在浏览器中执行此操作)
  3. 您可以使用 node.js 生成多个进程
  4. 例如,浏览器中的 JavaScript 有一个称为Web Workers 的功能(在 Node.js 中未使用)

这就是我能想到的全部内容,但总而言之,node.js 允许您在机器上运行代码,就像运行 Python、Java、Ruby 等一样。