- 概念
将一个复杂的程序文件,依据一定的规则拆分成多个文件的过程,称为模块化。
拆分出的每一个文件就是一个模块,模块内部数据是私有的,可以通过暴露内部数据,便于其它模块使用。 - 好处
- 防止命名冲突
- 高复用性
- 高维护性
- 模块暴露数据
// 在mine.js中定义方法
function test1(){
console.log('暴露方法1')
}
function test2(){
console.log('暴露方法2')
}
// 假设只有一个方法 test1
module.exports = test1
// 多个方法 使用对象方式暴露
module.exports = {
test1,
test2
}
// 还有直接命名的方式exports.name
exports.test1 = test1
exports.test2 = test2
// 在index.js中
// 只存在一个方法的时候
const m = require('./mine.js')
// 这个时候 m运行的就是,mine.js中 test1 方法
m();
// 多个方法 对象形式
const {test1,test2} = require('./mine.js')
test1()
test2()
// 命名形式
const m = require('./mine.js')
m.test1()
m.test2()