Node的介绍

2023-11-30 00:11:55 浏览数 (1)

Node介绍

为什么要学习Node.js

  • 企业需求
    • 具有服务端开发经验更改
    • front-end
    • back-end
    • 全栈开发工程师
    • 基本的网站开发能力
      • 服务端
      • 前端
      • 运维部署
    • 多人社区

Node.js是什么

  • Node.js是JavaScript 运行时
  • 通俗易懂的讲,Node.js是JavaScript的运行平台
  • Node.js既不是语言,也不是框架,它是一个平台
  • 浏览器中的JavaScript
    • EcmaScript
      • 基本语法
      • if
      • var
      • function
      • Object
      • Array
    • Bom
    • Dom
  • Node.js中的JavaScript
    • 没有Bom,Dom
    • EcmaScript
    • 在Node中这个JavaScript执行环境为JavaScript提供了一些服务器级别的API
      • 例如文件的读写
      • 网络服务的构建
      • 网络通信
      • http服务器
  • 构建与Chrome的V8引擎之上
    • 代码只是具有特定格式的字符串
    • 引擎可以认识它,帮你解析和执行
    • Google Chrome的V8引擎是目前公认的解析执行JavaScript代码最快的
    • Node.js的作者把Google Chrome中的V8引擎移植出来,开发了一个独立的JavaScript运行时环境
  • Node.js uses an envent-driven,non-blocking I/O mode that makes it lightweight and efficent.
    • envent-driven 事件驱动
    • non-blocking I/O mode 非阻塞I/O模型(异步)
    • ightweight and efficent. 轻量和高效
  • Node.js package ecosystem,npm,is the larget scosystem of open sourcr libraries in the world
    • npm 是世界上最大的开源生态系统
    • 绝大多数JavaScript相关的包都存放在npm上,这样做的目的是为了让开发人员更方便的去下载使用
    • npm install jquery

Node能做什么

  • web服务器后台
  • 命令行工具
    • npm(node)
    • git(c语言)
    • hexo(node)
    • ...
  • 对于前端工程师来讲,接触最多的是它的命令行工具
    • 自己写的很少,主要是用别人第三方的
    • webpack
    • gulp
    • npm

起步

安装Node环境

  • 查看Node环境的版本号
  • 下载:https://nodejs.org/en/
  • 安装:
    • 傻瓜式安装,一路next
    • 安装过再次安装会升级
  • 确认Node环境是否安装成功
    • 查看node的版本号:node --version
    • 或者node -v
  • 配置环境变量

解析执行JavaScript

  1. 创建编写JavaScript脚本文件
  2. 打开终端,定位脚本文件的所属目录
  3. 输入node 文件名执行对应的文件

注意:文件名不要用node.js来命名,也就是说除了node这个名字随便起,最好不要使用中文。

文件的读写

文件读取:

代码语言:javascript复制
//浏览器中的JavaScript是没有文件操作能力的
//但是Node中的JavaScript具有文件操作能力
//fs是file-system的简写,就是文件系统的意思
//在Node中如果想要进行文件的操作就必须引用fs这个核心模块
//在fs这个和兴模块中,就提供了人所有文件操作相关的API
//例如 fs.readFile就是用来读取文件的

//  1.使用fs核心模块
var fs = require('fs');

// 2.读取文件
fs.readFile('./data/a.txt',function(err,data){
   if(err){
        console.log('文件读取失败');
   }
    else{
         console.log(data.toString());
    }
})

文件写入:

代码语言:javascript复制
//  1.使用fs核心模块
var fs = require('fs');

// 2.将数据写入文件
fs.writeFile('./data/a.txt','我是文件写入的信息',function(err,data){
   if(err){
        console.log('文件写入失败');
   }
    else{
         console.log(data.toString());
    }
})

http

服务器:

代码语言:javascript复制
// 1.加载http核心模块
var http = require('http');

// 2.使用http.createServer()创建一个web服务器
var server = http.createServer();

// 3.服务器要做的事儿
// 提供服务:对数据服务
// 发请求
//	接收请求
//	处理请求
//	反馈(发送响应)
//	当客户端请求过来,就会自动触发服务器的request请求事件,然后执行第二个参数:回调处理函数
server.on('request',function(){
    console.log('收到客户的请求了')
})

// 4.绑定端口号,启动服务
server.listen(3000,function(){
    console.log('runing...')
})

总结与思考

  1. 异步编程:Node.js 采用了非阻塞式 I/O 和异步编程的方式,可以处理高并发、高吞吐量的请求。这种异步编程模型对于 I/O 密集型应用非常适合,可以提高系统的响应速度和吞吐量。
  2. 事件驱动:Node.js 基于事件驱动的模型,通过触发事件和注册回调函数的方式来处理请求。这种模型可以有效地减少系统的资源占用,提高系统的可扩展性和可维护性。
  3. 模块化:Node.js 支持模块化的编程方式,可以将代码分成多个模块,每个模块可以单独开发、测试和维护,使得系统更加易于开发和维护。
  4. 跨平台性:Node.js 可以运行在多种操作系统上,包括 Windows、Linux 和 Mac OS 等,这使得开发者可以在不同的平台上开发和运行应用程序。
  5. 生态系统:Node.js 有一个庞大的生态系统,包括了大量的第三方模块和工具,这些模块和工具可以方便地扩展 Node.js 的功能,使得开发更加高效和便捷。

总的来说,Node.js 是一款非常适合开发高并发、高吞吐量的应用程序的 JavaScript 运行环境,具有异步编程、事件驱动、模块化和跨平台性等优点。在选择开发技术时,应该根据实际的业务需求和技术特点来进行选择。

我正在参与2023腾讯技术创作特训营第三期有奖征文,组队打卡瓜分大奖!

0 人点赞