module.exports 對象是由模塊系統建立的。在咱們本身寫模塊的時候,須要在模塊最後寫好模塊接口,聲明這個模塊對外暴漏聲明內容,module.exports提供了暴漏接口的方法。app
一、返回一個JSON object函數
1 var app = { 2 name:'app', 3 version:'1.0.0', 4 sayName:function(name) { 5 console.log(this.name); 6 } 7 } 8 9 module.exports = app;
這種方法能夠返回全局共享的變量或者方法。ui
調用方法:this
1 var app = require("./app.js"); 2 app.sayName('hello');//hello
或者這樣用:spa
1 var func1 = function(){ 2 console.log("func1"); 3 }; 4 5 var func2 = function(){ 6 console.log("fun2"); 7 }; 8 9 exports.function1 = func1; 10 exports.function2 = func2;
調用方法爲:prototype
var functions = require("./functions"); functions.function1(); functions.function2();
二、返回一個構造函數code
CLASS.js對象
var CLASS = function(args) { this.args = args; } module.exports = CLASS;
調用:blog
var CLASS = require("./CLASS.js"); var c = new CLASS('arguments');
三、返回一個實例對象:接口
//CLASS.js var CLASS = function() { this.name = "class"; } CLASS.prototype.func = function(){ alert(this.name); } module.exports = new CLASS();
調用:
var c = require("./CLASS.js"); c.func();//"class"