export default与export的区别
- export与export default均可用于导出常量,函数,文件,模块等。
- 在一个文件或模块中,export,import可以有多个,export default只能有有一个。
- 通过export方式导出,在导入时要加上{},export default则不需要。
- 输出单个值,可使用export default。输出多个值时,要使用export,两个不要同时使用。
module.export
module.exports对象是由模块系统创建的,在我们自己写模块时,需要在模块最后写好模块接口,声明这个模块对外暴露什么内容。module.exports提供了暴露接口的方法。
返回JSON Object
1
2
3
4
5
6
7
8var app = {
name: 'app',
version: '1.0.0',
sayName: function(name){
console.log(this.name);
}
}
module.exports = app;这种方法可以返回全局共享的变量或者方法。
调用方法:1
2var app = require('./app.js');
app.sayName('hello');//hello或者可这么用
1
exports.function1 = function(){}
导入方法
1
2var functions = require('./function.js');
functions.function1()返回一个构造函数
1
2
3
4
5// class类
var CLASS = function(args){
this.args = args;
}
module.exports = CLASS;调用方式:
1
2var CLASS = require('./class.js');
var c = new CLASS('arguments');返回一个实例对象
1
2
3
4
5
6
7
8// CLASS.js
var CLASS = function(){
this.name = 'class';
}
CLASS.prototype.func = function(){
alert(this.name);
}
module.exports = new CLASS();调用方式:
1
2var c = require('./CALSS.js');
c.func(); //'class'