您的位置:首页 > Web前端 > Node.js

Node学习(5)export和module.export的区别

2018-03-05 20:33 429 查看
先上例子
(1)将函数直接导出成模块
模块文件:./my_modules/m.jsfunction fn1(){
console.log('我是fn1')
}

module.exports=fn1;index.jsvar foo=require('./my_modules/m')

foo();//我是fn1(2)如果模块文件中有两个函数,第二个会覆盖第一个
模块文件:./my_modules/m.js
function fn1(){
console.log('我是fn1')
}
function fn2(){
console.log('我是fn2')
}
module.exports=fn1;
module.exports=fn2;index.js
var foo=require('./my_modules/m')

foo();//我是fn2(3)如何导出模块中的所有函数
模块文件:./my_modules/m.js
function fn1(){
console.log('我是fn1')
}
function fn2(){
console.log('我是fn2')
}
module.exports.fn1=fn1;
module.exports.fn2=fn2;index.jsvar foo=require('./my_modules/m')

foo.fn1();//我是fn1
foo.fn2();//我是fn2
(4)exports是module.exports的一个引用,exports=module.exports={}
exports.xxx 相当于在导出对象上挂属性,该属性对调用模块直接可见

模块文件:./my_modules/m.js
exports.fn1=function(){
console.log('我是fn1')
}
exports.fn2=function(){
console.log('我是fn2')
}index.js
var foo=require('./my_modules/m')

foo.fn1();//我是fn1
foo.fn2();//我是fn2小结:
1、module.exports=xxx,相当于导出某个函数,在另一个文件中引用后可直接调用
2、exports.xxx和module.exports.xxx相当于把函数或变量挂载在对象上,在另一个文件中应用后,通过调用对象属性和方法进行使用
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: