exports的作用可以暴露变量或者函数

得一个一个暴露

例如:

module1.js

exports.obj = {
    name: '张三',
    age: 18
};

exports.fun = function (a) {
    console.log("调用函数")
    console.log('得到的参数是:' + a)
}

nodejs中必须通过exports.xxx进行暴露


通过对象批量暴露

module.exports可以这样写

module.exports = {
    obj: {
        name: '张三',
        age: 18
    },
    fun: function (a) {
        console.log("调用函数")
        console.log('得到的参数是:' + a)
    }
}

在另一个js文件中需要使用到上面定义的obj和fun则通过requires

module2.js

var m1 = require('./module1')

m1.fun(1) //调用了module1.js暴露的函数