[TOC]
## node特性
1. Node.js 使用事件驱动模型,当web server接收到请求,就把它关闭然后进行处理,然后去服务下一个web请求。
当这个请求完成,它被放回处理队列,当到达队列开头,这个结果被返回给用户。
## 新建一个http服务器
```
// 引入http模块
var http = require('http');
//创建一个http服务器,监听在8888端口
http.createServer(function(request, response) {
//设置返回头
response.writeHead(200, {'Content-Type' : 'text/plain'});
response.end('Hello World');
}).listen(8888)
```
## npm包管理器
`npm install <module>`本工程内安装模块
`npm install <module> -g` 全局安装模块
`npm list`、`npm ls`查看已安装模块
`npm update <module>` 更新模块
`npm search <module>`搜索模块
`npm init`创建模块
`npm cache clear`清空本地缓存
## 事件触发器EventEmitter
```
// 引入 events 模块
var events = require('events');
// 创建 eventEmitter 对象
var eventEmitter = new events.EventEmitter();
```
注册事件
~~~
emitter.on('someEvent', function(arg1, arg2) {
console.log('listener1', arg1, arg2);
});
~~~
触发事件
~~~
emitter.emit('someEvent', 'arg1 参数', 'arg2 参数');
~~~
## 模块系统
~~~
exports.world = function() {
console.log('Hello World');
}
~~~
1. 添加项目依赖项`npm install --save <module>`
2. 删除项目依赖项`npm rm <module --save`
- php
- 安全
- php7
- 特性
- 编译安装
- 源码整体框架
- 基本变量
- thinkphp3.2.3
- thinkphp5.0
- thinkphp6.0
- laravel
- 配置
- 路由
- artisan控制台
- eloquent
- tinker
- composer
- 加密解密
- 小知识点
- 数组
- string
- 代码简洁之道
- 编译
- 语法糖
- lumen
- smarty
- 错题集
- 算法及数据结构
- 线性表结构
- 插入排序
- 冒泡排序
- 数据库
- mysql
- oracle
- PostgreSQL
- redis
- sqlserver
- 前端
- 备忘
- js
- nodejs
- vue
- css
- electron
- vue
- 语法糖
- colorui使用笔记
- 微信小程序
- 操作系统
- windows
- bat
- 快捷键
- linux
- sed
- 问题解决
- git
- docker
- docker-compose
- 正则表达式
- ps
- lua
- 协议相关
- 问题思索
- Golang
- 测试
- 读取和写入json配置文件
- 类
- 接口
- mod
- gin
- fyne
- 禅道二次开发
- 服务
- apache
- 漏洞配置
- http server优化
- nginx
- 安装
- 面试题库
- freeswitch