1. 闭包
定义:
官方定义:内部函数总是可以访问其所在的外部函数中声明的参数和变量,即使在其外部函数被返回(寿命终结)了之后
个人理解:从形式来看,闭包就是在函数里面定义一个函数,从特点来说,子函数能够读写父函数的局部变量。
需要注意: 因为闭包会引用包含函数的整个变量对象,所以用id值只能表面上解除循环引用,需要进一步手动设置元素为null才能真正减少引用,释放内存
应用:
使用闭包能够为 express中间件,传递参数到中间件当中。
2.异步I/O和事件驱动
异步I/O: 做I/O opertaion的时候将不会造成任何的阻塞
事件驱动:就是通过监听事件的状态变化来做出相应的操作。比如读取一个文件,文件读取完毕,或者文件读取错误,那么就触发对应的状态,然后调用对应的回掉函数来进行处理。