Node. js 教程

toggle

目录

  • 什么是 Node. js ?
  • 为什么要学习 Node. js ?
  • 如何安装 Node. js ?
  • Node. js 的应用
  • Node. js 应用程序示例
  • 学习 Node. js 的先决条件
  • 开始使用 Node. js
  • Node. js 职位和薪水
  • 关于 Node. js 的常见问题

Node. js 是一个强大的 JavaScript 运行时环境 , 基于 Google Chrome 的 V8 JavaScript Engine 构建。 Node. js 是开源和跨平台的。

什么是 Node. js ?

Node. js 不是像 Python , Java 或 C / C ++ 这样的编程语言。 Node. js 是一种类似于 Java 虚拟机的运行时 , 它将 JavaScript 代码转换为机器代码。它被世界各地成千上万的开发人员广泛用于开发 I / O 密集型 Web 应用程序 , 如视频流网站 , 单页应用程序和其他 Web 应用程序。

使用 Node. js , 可以将 JavaScript 用作后端。随着 JavaScript 已经成为前端开发的流行选择 , 开发人员越来越多地使用围绕 MERN ( MongoDB , Express , React 和 Node. js ) 和 MEAN ( MongoDB , Express , Angular 和 Node. js ) 堆栈的应用程序开发。

为什么要学习 Node. js ?

Node. js 可用于完全填充多个目的 , 如服务器端编程 , 构建 API 等。

  • Node. js 用于使用 JavaScript 进行服务器端编程。因此 , 您可以使用单一编程语言 (JavaScript) 进行前端和后端开发。
  • Node. js 使用 async 和 await 技术在单个线程中实现任务的异步执行。这使得 Node. js 应用程序明显快于多线程应用程序。
  • Node. js 被用于构建命令行应用程序 , Web 应用程序 , 实时聊天应用程序 , REST API 等。

如何安装 Node. js ?

不同的操作系统需要不同的步骤来安装 Node. js , 请根据您安装的操作系统遵循提供的方法。

  • Windows 上的 Node. js 安装
  • Linux 上的 Node. js 安装 - Ubuntu

Node. js 的应用

Node. js 用于构建不同类型的应用程序。下面列出了一些应用程序类型。

  • 流应用程序 : Node. js 可以轻松处理实时数据流 , 其中需要按需下载资源而不会使服务器或用户的本地计算机过载。 Node. js 还可以在服务器和客户端之间提供快速数据同步 , 从而通过使用 Node. js 事件循环将延迟降至最低来改善用户体验。
  • 单页应用程序 : Node. js 是 SPA 的绝佳选择 , 因为它能够有效处理异步调用和繁重的输入 / 输出 (I / O) 工作负载。使用 Express. js 构建的数据驱动 SPA 快速、高效且健壮。
  • 实时应用程序 : Node. js 是构建轻量级实时应用程序的理想选择 , 例如消息传递应用程序接口 , 聊天机器人等。 Node. js 具有基于事件的体系结构 , 因此具有出色的 WebSocket 支持。它促进了服务器和客户端之间的实时双向通信。
  • API: Node. js 的核心是 JavaScript 。因此, 它变得更容易处理 JSON 数据。因此, 您可以使用 Node. js 构建基于 REST 的 API 。

这些是 Node. js 的一些用例。但是, 它的使用并不局限于这些类型。公司越来越多地将 Node. js 用于各种应用程序。

Node. js 应用程序示例

要在 Node. js 中创建基本的 Hello World 应用程序 , 请将以下单行 JavaScript 保存为 hello. js 文件。

console.log("Hello World");

在存在 hello. js 文件的文件夹中打开 powershell ( 或命令提示符 ) 终端 , 然后输入以下命令。 “Hello World ” 消息将显示在终端中。

PS D:\nodejs> node hello.js
Hello World

要使用 Node. js 创建 “Hello, World! ” Web 应用程序 , 请将以下代码保存为 hello. js :

http = require('node:http');
listener = function (request, response) {
  // Send the HTTP header
  // HTTP Status: 200 : OK
  // Content Type: text/html
  response.writeHead(200, {'Content-Type': 'text/html'});

  // Send the response body as "Hello World"
  response.end('<h2 style="text-align: center;">Hello World</h2>');
};

server = http.createServer(listener);
server.listen(3000);

// Console will print the message
console.log('Server running at http://127.0.0.1:3000/');

从命令行运行上述脚本。

C:\nodejs> node hello.js
Server running at http://127.0.0.1:3000/

该程序在 localhost 上启动 Node. js 服务器 , 并在端口 3000 上进入侦听模式。现在打开浏览器 , 然后输入 http: / / 127.0. 0.1: 3000 / 作为 URL 。浏览器会根据需要显示 Hello World 消息。

学习 Node. js 的先决条件

在继续本教程之前 , 您应该对 JavaScript 。由于我们将使用 Node. js 开发基于 Web 的应用程序 , 因此如果您对其他 Web 技术有一些了解 , 例如 HTML , CSS , Ajax 等。

开始使用 Node. js

本教程专为希望学习 Node. js 及其体系结构概念的软件程序员而设计 , 从基础到高级。本教程将通过适当的示例使您对 Node. js 的所有必要组件有足够的了解。

Node. js 基础知识

在深入 nodejs 之前 , 您应该熟悉 nodejs 的基础知识 , 如环境设置 , REPL 终端 , NPM , 回调 , 事件 , 对象等。

  • Node. js 简介
  • Node. js 环境设置
  • Node. js 第一个应用程序
  • Node. js REPL 终端
  • Node. js 命令行选项
  • Node. js 包管理器 (NPM)
  • Node. js 回调概念
  • Node. js 上传文件
  • Node. js 发送电子邮件
  • Node. js 事件

  • Node. js 事件循环

  • Node. js 事件发射器
  • Node. js 调试器
  • Node. js 全局对象
  • Node. js 控制台
  • Node. js 进程
  • Node. js 文件系统
  • Node. js 流
  • Node. js 扩展应用程序
  • Node. js 打包

Node. js 模块

Node. js modules provides a collection of functions that are used to perform different operations as per the requirements. All the impropant modules are listed below.

  • Node. js 断言模块
  • Node. js 缓冲模块
  • Node. js 控制台模块
  • Node. js DNS 模块
  • Node. js 操作系统模块

  • Node. js 路径模块模块

  • Node. js 查询字符串教程
  • Node. js URL 教程
  • Node. js 实用程序教程
  • Node. js V8 教程

Node. js 职位和薪水

Node. js 是几乎任何类型的项目的流行工具。学习 Node. js 后 , 您可以在不同的工作配置文件中找到工作。

  • Node. js 开发人员 - 薪水范围在 1.2 卢比到 12.6 卢比之间 , 平均年薪为 5.7 卢比。
  • Node. js 后端开发人员 - 薪水范围在 1.2 卢比到 11.0 卢比之间 , 平均年薪为 4.7 卢比。

关于 Node. js 的常见问题

Node. js 可以免费使用吗 ?

Node. js 是一个开源和跨平台的服务器框架。它可以在所有操作系统平台上完全免费使用 - Windows , Linux , MacOS 等。

Node. js 可以用于商业应用吗 ?

当然。 Node. js 被广泛用于在流媒体应用程序 , SPA , API 等领域构建商业应用程序。许多顶级公司 , 如 Twitter , Slack , Coursera 等在其应用程序中使用 Node. js 。

我可以在任何托管服务上部署 Node. js 应用程序吗 ?

Node. js 应用程序可以部署在流行的托管服务上 , 如 AWS 、 Heroku 、 Hostiner 等。

Node. js 是否支持多线程 / 并发 ?

Node. js 运行时在单个线程中执行 JavaScript 。它通过异步 / 等待机制实现了多个任务的异步执行 , 用于发出非阻塞 IO 请求。

Node. js 有多快 ?

与 Java , PHP , Python 等语言相比 , Node. js 在执行速度方面提供了更好的性能。但是 , 对于低级编程应用程序 , 它不如 C / C ++ 。

Node. js 可以用于 AI 和机器学习吗 ?

NPM 包管理器确实有某些用于机器学习库的包 , 例如 tensorflow. js 和 brain. js 。但是 , Python 和 Ruby 仍然是开发 AI 和机器学习应用程序的首选。

Node. js 文章

您可以在浏览一组 Node. js 文章 Node. js 文章 .