node初始

时间:2021-11-17 23:47:38

### 一、什么是node.js



> Node是一个基于 Chrome V8 引擎的 JavaScript 运行环境

>

> Node使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效

>

> Node.js 的包管理器 npm,是全球最大的开源库生态系统



### 二、node.js能做哪些事



1. 处理文件与数据库

2. 与互联网进行沟通,以标准化的格式处理请求并发送回答(处理客户端请求)

3. 用来执行编译 CSS 预编译语言、预编译、压缩、混淆 JS、压缩图片、reload、deploy 等工程化任务



### 三、node.js的优点



1. 处理高并发场景性能更高



   Java    1G   服务器  每个客户端连接耗费2M资源  1024=2^10  



   node  1G   服务器



2. 采用事件驱动、异步编程,为网络服务而设计



3. 轻量高效,运行速度是PHP的86倍



4. 包和模块



5. 便于前端学习



### 四、使用node.js



##### 安装



> node官网  https://nodejs.org



> node中文网  http://nodejs.cn



```javascript

node -v //查看版本,检测安装是否成功

```



##### 运行



```javascript

node index //文件名,后缀.js可写可不写

```



### 五、node.js模块



##### 核心模块



os、http、fs等



##### 自定义模块



exports、module.exports、require



##### 第三方模块



nodemon、cheerio等,需要在命令行中执行 `npm install 模块名称`



模块之间不能循环依赖



npm



> 是一个包管理工具



> 是仓库



> 是网站



##### nrm



npm install nrm -g



nrm ls











##### yarn







````javascript

yarn add package == npm install package --save

yarn add package -dev == npm install package --save-dev



yarn update package == npm updata package



yarn remove package == npm uninstall package



````







**用node服务器做一个中间层**

**前端 -> node服务器 -> JAVA服务器**











#####npm上传自己的模块包



1. 注册用户

2. 在本地新建一个项目

3. 使用 npm init -y初始化项目

4. npm adduser  输入用户名密码

5. npm  publish