Node.js、数据库、模块化、NPM、Axios

一、初识Node.js

1.基于chrome v8引擎的js运行环境

2.v8引擎:chromejs解析引擎,C++开发,单线程,可独立运行

3.运行环境:①类似虚拟机,提供js在服务端运行的环境

js工具库:扩展了js在服务端的功能

二、环境安装

1.Node.js必须先安装再使用 -- 有很多版本

2.安装方式:①下载包安装:添加到环境变量

版本更新:重新下载安装

NVM:多版本切换

3.查看是否安装成功:node -v ----命令行

4.注意:①安装环境不要出现中文

②添加到环境变量

③查看是否安装成功 : $ node -v

REPL环境

1.类似开发者工具中的console

2.进入REPL环境:打开命令行:node + 回车

3.退出REPL环境:ctrl+c或者process.exit()或.exit 4.执行js文件:node*.jsnode demo(文件默认为``js)`

全局作用域成员

1.global:全局环境 ,类似window

2.globalThis:ES6新增的全局对象,浏览器端指向window,服务端指向global

3.process:获取当前的node进程信息

4.console:node内置的控制台模块,类似客户端的console

5.Buffer:用于处理二进制的数据

Bable

1.ES6转码器:将ES6转为ES5 -- 可以使用ES6编写程序,然后将代码转化为ES5适应老版本浏览器

2.安装:$ npm install --save-dev @babel/core

3.配置文件:.babelrc -- 项目根目录

{
  "presets": [ "@babel/env"], //转码规则
  "plugins": []  //插件
}

4.转码规则:官方提供,可通过npm安装

$ npm install --save-dev @babel/preset-env

5.命令行转码工具:$ npm install --save-dev @babel/cli

$ npx babel es6.js  --  转码之后输出到控制台
$ npx babel es6.js -o es5.js  --  将es6.js文件转码之后写入到es5.js文件
​
npx:npm5之后新增的功能,帮助去调用局部安装的工具

process.stdout.write('\033[0f'); process.stdout.write('\033[2J');

Node.js核心优势

  1. 单线程

  2. 非阻塞式I/O -- 异步编程,错误优先(回调函数的第一个参数是error)

模块化结构CommonJS

1.使用CommonJs规范 -- 运行时加载 ,同步加载

2.Node.js模块分类:①核心模块:平台自带

②第三方模块:包

③文件模块:自己开发的

3.module对象:Node.js内部提供,所有模块都是module的实例

4.导出:exports或module.exports

exports.name = val;
module.exports = {name:val}
​
注意:exports为module.exports别名,导出最终以module.exports为准

5.导入:require

规则一:以:./或../开头的路径以当前文件所在的文件夹开始寻找模块
require("./module.js");  //加载当前目录下的module.js模块
require("./module"); // 省略扩展名则按js文件执行
规则二:以/开头则以系统根目录(当前文件所在的目录)开始寻找模块
require("/module/demo.js"); //加载当前文件所在根目录目录根据路径开始寻找
规则三:不以./或../或/开头
1:以核心模块加载
require("http");
2:从当前目录开始依次向上查找node_modules目录
规则四:路劲是一个文件夹
1.查找文件夹下是否有package.json中main字段指向的文件
require("./path")
2.不存在package.json或者没有main字段,指向index.js

一、模块化结构

1.分类:①内置模块:Node.js系统自带模块 -- require("module&

你可能感兴趣的:(node.js,数据库,npm)