Node.js in action

By Cicades

《Node.js in action》学习笔记

1.Node.js 编程基础

1.1模块系统

  • 模块导入导出

    模块导入导出

  • 模块的查找

    模块的查找

1.2异步编程

  • 用回调函数处理单次事件

  • 用事件发射器处理重复性事件

eventEmitter.once(callback)-处理响应只发生一次的事件;eventEmitter.on(callback)-处理持续发生事件

var EventEmitter = require('event').EventEmitter
//创建事件发射器的实例
var channel = new EventEmitter()

//绑定名为'join'的事件,并添加callback,也可用addEventListener来注册事件
channel.on('join', () => console.log('welcom'))
channel.on('join', () => console.log('to Node.js'))
//触发事件
channel.emit('join')

//移除指定监听器的某个事件,如:移除join的第二个事件
channel.removeListener('join', () => console.log('to Node.js'))

//移除指定监听器的所有事件,移除'join'的所有事件
channel.removeAllListeners('join')

//获取某类型监听器的监听事件长度
channel.listener('join').length

//扩展事件发生器上的监听器数量
channel.setMaxListeners(50)

1.3异步逻辑的顺序化

  • 串行流程控制

  • 并行流程控制