### Node初始
1. JS是一门脚本语言,脚本语言都需要一个解析器去解析才能运行
对于浏览器中的JS,浏览器充当了解析器的角色:JS主要用于操作DOM
对于独立运行的JS,Node充当了解析器的角色:JS操作磁盘文件与搭建HTTP服务器
### NodeJS能做什么
1. 搭建服务器程序
2. 编辑工具
3. 使用命令交互模式调式JS代码(REPL交互环境下调式Node)
### 权限问题
1. 在Linux系统下,使用NodeJS监听80 || 443端口提供HTTP(s)服务时,需要root权限,可以使用以下解决方案
sudo node server.js
### 模块:预定义变量:require exports module
1. require() 加载模块,返回模块对象,问题?可以加载什么类型的文件:JS JSON?
2. exports对象是当前模块的导出对象,用于导出当前模块公有方法和属性
3. module对象可以访问到当前模块的相关信息,但大多数情况下用来替换当前模块的导出对象
导出函数:module.exports = function(){}
4. Node除了编写JS模块,也可以使用C/C++开发二进制模块,扩展名为.node,使用和JS模块一样
### 使用第三方模块
1. 安装第三方模块时,如果模块依赖其它模块,也会一同安装