63 个最佳 Nodejs 面试问题及答案
点击此处阅读原文
65 个最佳 NodeJs 面试问题 -探索更多...
65 个最佳 NodeJs 面试问题 -探索更多...
点击此处阅读原文
1) 什么是 Node.js?
Node.js 是基于 Chrome V8 JavaScript 引擎构建的 JavaScript 运行时。Nodejs
是一个开源、跨平台的 JavaScript 运行时环境。它是一个用于开发服务器端 Web 应用程序的轻量级框架。
Node.js 基于 Google Chrome 的 V8 运行时构建 - 用 C++ 编写,适用于多种操作系统并且速度超快。
使用 JavaScript 还意味着默认情况下转换 JSON 数据(Web 上最常见的数据交换格式)速度很快。
Node.js 用于创建大型应用程序开发,主要用于视频流网站、单页应用程序和其他 Web 应用程序。
65 个最佳 NodeJs 面试问题 -探索更多...
在 Windows、Mac 和 Linux 上设置 Node.js 开发环境 -
在 Mac、Windows 和 Linux 上安装 Node.js 非常简单。您只需访问 Node.js 官方网站并下载安装程序(适用于 Mac、Windows 和 Linux),然后按照您的要求执行安装程序即可。之后,您的 Windows 安装程序会收到一条类似“恭喜!!您已成功在 Windows 上安装 Node.js!!”的短信。
Node.js 安装程序按照步骤
- 从 Nodejs.org 官方网站下载 Windows 安装程序。
- 单击并运行安装程序(.msi 安装程序包)。
- 按照安装程序的提示说明进行操作(接受协议并单击“下一步”按钮)
- 重新启动计算机以使命令行界面 (CLI) 中的所有内容正常运行。
下载安装程序,
下载 Node.js 为您构建的适用于 Windows、Mac 和 Linux 的安装程序和源代码(带有 NPM),之后您就可以开始开发应用程序了。NPM
位于 Node.js 的安装目录中。
更新 Node.js,只需前往 Node.js 官方网站,下载 Windows、Mac 和 Linux 版本的安装程序,然后执行即可。现在,您的计算机上已更新了最新版本的 Node.js。
2) 为什么选择 Node.js?
我使用 Node 的主要原因是为移动和 Web 应用程序构建后端 API:
- 非阻塞异步 I/O(阻塞 I/O 无法扩展以实现高并发性)
- 单线程事件循环(类似 nginx 和 Redis - 读取:FAST)
- 事件驱动服务器
- 真正的词法闭包(类似 Haskell 和 Scheme - 不同于 Java 和 C++)
- 内置对承诺和基于生成器的协程的支持
- 核心中的 HTTP/2(在撰写本文时,我不知道有任何其他语言/运行时内置了对 HTTP/2 的支持,并且不需要安装任何依赖项)
- 为构建 REST、GraphQL 和 WebSocket 服务器提供出色的支持,并为传统客户端提供 Socket.io。
3) Node.js 的创始人是谁?
Ryan Dahl 是 Node.js 的创始人。其开发由 Joyent 赞助。
4) 它最初是什么时候发布的?
它最初是在 2009 年发布的。
5) Node.js 是用什么语言编写的?
Node.js 是用 C、C++ 和 JavaScript 编写的。它使用 Google 的开源 V8 JavaScript 引擎将 JavaScript 代码转换为 C++。
6) 什么是 npm?
NPM 是 Node.js 的软件包生态系统。它是世界上最大的开源库生态系统。它也是用于与 npm 交互的命令行包管理器的名称。
卸载 Node.js 和 NPM -
您可以像卸载其他软件一样卸载 Node.js 和 NPM。步骤如下:
- 打开 Windows 控制面板。
- 选择程序和功能选项。
-
Click to “uninstall a program”.
-
Select installed Node.js, and click the uninstall link.
5) npm 用来标识项目及其依赖项的文件叫什么名字?
它的名字是 package.json。
8) 除了 V8,我们还能使用其他引擎吗?
可以!Microsoft Chakra 是另一个可以与 Node.js 一起使用的 JavaScript 引擎。它尚未正式发布。
9)使用 Node.js 有什么好处?
- 非常快
- 异步
- 可扩展
- 开源
- 无缓冲
- 高度优化的V8引擎
- 优秀的JIT
- npm 上现成可用的模块库
- 如果您需要线程来执行 CPU 密集型操作,则对 C++ 扩展提供强大的支持
- 许多优秀的测试框架、linters 和其他工具
10) Nodejs 的当前版本是多少?
点击查看 Nodejs 最新版本的详细信息。
11) 在哪里下载和安装?
最新 LTS 版本:12.13.1(包含 npm 6.12.1)。
下载 Node.js 源代码或适用于您平台的预构建安装程序,立即开始开发。
下载链接……
12)如何将 Node.js 升级到最新版本?
Windows:
您只需从 Node 网站下载 Windows 中的“.msi”文件并重新安装 Node。
Linux/Mac:
模块 n 使版本管理变得简单:
sudo npm install n -g
对于最新稳定版本:
sudo n stable
获取最新版本:
sudo n latest
13)何时应该使用 Node.js?
Nodejs 可用于开发:
- 用于通用应用程序的节点
- 用于实时 Web 应用程序的节点
- 用于开发聊天应用程序的节点
- 用于开发网络应用程序的节点
- 用于开发游戏服务器的节点
- 用于分布式系统的节点
14) 何时不应使用 Node.Js?
Node 是一个单线程框架,因此我们不应该在应用程序需要较长的处理时间或需要花费太多时间进行任何计算的情况下使用它。
15) 对于 Node.js,为什么 Google 使用 V8 引擎?
Google 使用 V8 是因为它是一个 Chrome 运行时引擎,可以将 JavaScript 代码转换为本机机器代码。
反过来,这又加快了应用程序的执行和响应过程,并为您提供快速运行的应用程序。
16) Node.js 有哪些特性?
Node 特性列表如下:
- 它是开源的
- 高可扩展性
- 极其简单快捷
- 无缓冲
- 单线程
- 异步
- 异步堆栈跟踪
- 更快等待
- 跨平台
- 更快的套件
- 易于学习
- 易于扩展
- 缓存
- 数据流
- 托管
- 单一编程语言
- 实时 Web 应用程序
- 支持导入/导出语句(无需捆绑器)
- 更快地解析 JavaScript
- 参数不匹配时调用速度更快
- 还有一些其他改进,例如 - 堆大小、本机模块 N-API
- 许可证:它是根据 MIT 许可证发布的。
17) 如何查看 NPM 版本?
你可以使用以下命令查看版本:
npm -version
18) 如何查看 Node 版本?
你可以使用以下命令查看版本:
node –v
19) Nodejs 提供哪些模块?
Nodejs 提供三个模块:
- 核心模块
- 本地模块
- 第三方模块
核心模块 -
通常,核心模块在 Node 进程启动后立即加载。
本地模块 -
本地模块由用户或专门的软件开发人员在本地创建。所有此类模块可能包含多个功能,并被分组到不同的文件和文件夹中。所有这些模块都可以借助 Node 包管理器在 Nodejs 社区中分发。
第三方模块或外部模块 -
通过 Node 包管理器下载的第三方模块。