什么是Node.js?

什么是Node.js?

  1. Node.js是一门后端语言
  2. 基于Chrome v8引擎的js运行环境
    除此之外:还有其他的引擎: 单片机、actionscript
  3. Node.js有两大特征
    1. 事件驱动
      • 事件的定义(发布)
      • 事件的触发(订阅)
    2. 非阻塞式 I/O 模型
      • 非阻塞 : 执行一个任务时,不需要等待这个任务执行完成,就可以去执行其他任务
      • I/O: 磁盘文件操作 / 数据库数据操作

总结:
问题: 非阻塞,但是js是单线程,要想实现非阻塞,必须将任务放到任务队列,任务队列如何放?
解决: js中异步操作

问题: js中如何实现异步操作
解决:

  1. 回调函数 √
  2. Promise
  3. generator函数
  4. async函数
  5. Node.js自带的 nextTick setImmediate
  6. 别人封装的 async.js 库

Node什么是Node.js?.js的包管理器

NPM: 全球最大的开源生态系统( 国外的 )
cnpm 淘宝镜像( 国内的 )
yarn 流行
npm && yarn 全部要配置国内镜像 ( 百度关键字: yarn国内镜像 )

Node.js的版本问题

  1. Node.js有两个版本, 一个是测试版, 一个是稳定版,造成;两个版本的原因是: 有两个团队
  2. 业内规定:
  3. 版本的单数是: 测试版 bate版本
  4. 版本的偶数是: 稳定版

Node.js 安装

安装方式有两种:

  1. 官网下载镜像直接安装 ( 只能使用一个版本 )
  2. 使用 nvm 来安装 ( nvm可以管理多个Node.js版本 )

nvm有坑: nvm安装有难度

  1. 要求: Node.js安装最低版本也要8.9以上

Node.js使用

  1. 命令终端使用
  2. 文件使用

1. 命令终端

  • Node.js的全局对象是 global ; javascript的全局对象是 window

  • 直接在命令终端中输入node,然后回车,就会出现 ‘>’ 标识,然后就可以写js语法了

  • 命令终端退出: Ctrl + c 两次

2. 文件型使用

  • 命令行键盘 tab 键 自动补全文件名称
  • 执行文件/运行文件:
    $ node 文件名称.js
  • 自动监听node.js文件/ 自动刷新工具
    $ nodemon 文件名称.js
  • nodemon √
  • supervisor
  • 自动监听工具的安装
  • npm
    $ npm install nodemon -g
    $ npm install supervisor -g
  • cnpm
    $ cnpm install nodemon -g
    $ cnpm install supervisor -g
  • yarn
    $ yarn add nodemon global
    $ yarn add supervisor global

Node.js服务器

Node.js服务器有两种

  1. web服务器( 静态服务器 )

//1.引入模块
var http=require('http');
var port=8080;
var hostname='localhost';
//2.创建web服务器
http.createServer(function(request,response){
//设置这个可以解析标签
response.writeHead(200,{
'content-type':'text/html;charset=utf8'
})
//3.发送数据给前端
response.write('<h1> hello node.js </h1>');
response.write('<em>ceshi</em>')
//4.告诉前端数据发送完成
response.end();
//5.监听服务器,链式操作
}).listen(port,hostname,function(){
console.log(`The server running in: http://${hostname}:${port}`);
})


  1. api服务器( 动态服务器 ) 数据接口

Node.js web服务器

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值