📜  Node.js 简介

📅  最后修改于: 2022-05-13 01:58:10.592000             🧑  作者: Mango

Node.js 简介

简介: Node.js 是一个开源和跨平台的运行时环境,用于在浏览器之外执行 JavaScript 代码。您需要记住NodeJS 不是框架,也不是编程语言。大多数人感到困惑并理解它是一个框架或编程语言。我们经常使用 Node.js 来构建后端服务,例如 Web App 或 Mobile App 等 API。它被 Paypal、Uber、Netflix、Walmart 等大公司用于生产。

NodeJS 的特点:我们也可以使用其他编程语言来构建后端服务,所以我将解释 Node.js 的不同之处。

  1. 易于上手,可用于原型设计和敏捷开发
  2. 它提供快速且高度可扩展的服务
  3. 它在任何地方都使用 JavaScript,因此 JavaScript 程序员可以很容易地使用 Node.js 构建后端服务
  4. 源代码更清晰和一致。
  5. 开源库的大型生态系统。
  6. 它具有异步或非阻塞性质。

NodeJS 的优点:这里是使用 Node.js 的好处

  1. 易于扩展性:开发人员更喜欢使用 Node.js,因为它可以轻松地在水平和垂直方向上扩展应用程序。我们还可以在应用程序的可扩展性期间添加额外的资源。
  2. 实时网络应用程序:如果您正在构建网络应用程序,您也可以使用PHP,并且使用 Node.js 将花费相同的时间,但如果我正在谈论构建聊天应用程序或游戏应用程序 Node.js由于更快的同步,更可取。此外,事件循环避免了 Node.js 开发的 HTTP 过载。
  3. Fast Suite: NodeJs 运行在 Google 开发的 V8 引擎上。 NodeJs 中的事件循环处理所有异步操作,因此 NodeJs 就像一个快速套件,所有操作都可以快速完成,例如在数据库、网络连接或文件系统中读取或写入
  4. 易于学习和编码: NodeJs 易于学习和编码,因为它使用 JavaScript。如果您是前端开发人员并且对 JavaScript 有很好的掌握,您可以轻松学习并在 NodeJS 上构建应用程序
  5. 缓存的优点:它提供了单个模块的缓存。每当对第一个模块有任何请求时,它都会缓存在应用程序内存中,因此您无需重新执行代码。
  6. 数据流:在 NodeJs 中,HTTP 请求和响应被视为两个独立的事件。它们是数据流,因此当您在加载时处理文件时,它将减少总体时间,并且当数据以传输形式呈现时会更快。它还允许您以闪电般的速度流式传输音频和视频文件。
  7. 托管: PaaS(平台即服务)和 Heroku 是 NodeJS 应用程序部署的托管平台,易于使用且不会遇到任何问题。
  8. 企业支持:大多数知名公司,如 Walmart、Paypal、Microsoft、Yahoo 都在使用 NodeJS 来构建应用程序。 NodeJS 使用 JavaScript,因此大多数公司都将前端和后端团队组合成一个单元。

NodeJS的应用: NodeJS应该优先构建:

  • 实时聊天,
  • 复杂的单页应用程序,
  • 实时协作工具,
  • 流媒体应用
  • 基于 JSON API 的应用程序

安装 Node 并使用它:

  • 使用网站:

1.您可以访问链接下载节点并下载LTS版本。

2.安装节点后,您可以使用命令在命令提示符中检查您的节点版本..

~ $node --version

3. 之后,您可以创建一个文件夹并在此处添加一个文件,例如 app.js。要运行此文件,您需要执行命令...

first app $node app.js

4. 节点模块:有一些内置模块可用于创建应用程序。一些流行的模块是 - OS、fs、事件、HTTP、URL,然后您可以使用这些行将这些模块包含在您的文件中。

var fs = require('fs');

5. 这是一个如何包含 HTTP 模块来构建服务器的示例……

javascript
var http = require('http');
  
// Create a server object:
http.createServer(function (req, res) {
  
    // Write a response to the client
    res.write('GeeksForGeeks'); 
  
    // End the response  
    res.end(); 
  
// The server object listens on port 8080
}).listen(8080);


javascript
var events = require('events');
var eventEmitter = new events.EventEmitter();
  
// Create an event handler:
var myEventHandler = function () {
    
    console.log('Welcome to GeeksforGeeks');
}
  
// Assign the event handler to an event:
eventEmitter.on('geeks', myEventHandler);
  
// Fire the 'geeks' event:
eventEmitter.emit('geeks');


这将在端口 8080 上侦听服务器。在命令提示符下运行文件后,它将执行您的文件并在此端口上侦听服务器。您还可以创建自己的模块并将其包含在您的文件中。

  • 使用 NPM: NPM 是一个节点包管理器,提供包下载和使用。它包含您在应用程序中需要的所有文件和模块。要安装任何软件包,您需要执行命令...
npm install 

这是使用事件模块的示例。

javascript

var events = require('events');
var eventEmitter = new events.EventEmitter();
  
// Create an event handler:
var myEventHandler = function () {
    
    console.log('Welcome to GeeksforGeeks');
}
  
// Assign the event handler to an event:
eventEmitter.on('geeks', myEventHandler);
  
// Fire the 'geeks' event:
eventEmitter.emit('geeks');

因此,这就是您可以从 node 开始并构建自己的应用程序的方式。您可以使用一些节点框架来构建应用程序。一些流行的节点框架是…… Express.js、Socket.io、Koa.js、 Meteor.js、Sail.js