node/conmonjs模块化:
1. 使用exports.或module.exports=导出,使用var zz=require( )导入
2. exports.foo导出时,require时相当于拿到exports对象,调用时写法zz.foo
3. 使用module.exports导出时,导入时则直接拿到foo,调用时写法zz( )
4. 模块解析规则:假设A引用B模块
相对路径:指定目录下查找B、指定目录下B目录下pkg的main入口、指定目录下B目录下index.js
非相对:先在A同级node_modules下查找B、A同级node_modules下B目录pkg的main入口、A同级node_modules下B目录的index.js,如果以上三步找不到,则从A的上个目录的node_modules重复以上三步