用法:node模塊都具備的方法(exports、module、require、__filename、__dirname)


 凡是玩弄nodejs的人,都明白,每一個模塊都有exports、module、require、__filename、__dirname的方法

清楚了解方法的用法后,玩轉node就等於清楚了日常講話的內容

(function(exports,require,module,__filename,__dirname){
	//打印一出,所有模塊的類型和值一目了然
	console.log("exports:",exports);
	console.log("__dirname:",__dirname);
	console.log("__filename:",__filename);	
	console.log("require:",require);
	console.log("module:",module);
	
})(exports,require,module,__filename,__dirname);

一、__filename

二、__dirname

三、exports

四、module

五、require

一、__filename

 *當前模塊的文件路徑:解析后的絕對路徑

//輸出當前的絕對路徑
console.log(__filename);

 

二、__dirname

*存放當前模塊的文件夾路徑

//輸出存放當前模塊的文件夾名稱
console.log(__dirname);

 

三、exports

*可以用來創建模塊,是一個對於module.exports更加簡短的引用形式。可以看出,module是exports的父親,要是你是這么想的話,你會看不到明天的太陽,嗯~,暫且不論它們的區別。

//Untitled2.js
//官方模塊http、fs、url用過沒,要是沒用過的話,你滾!
//量身為我而做的名片模塊
exports.name="木人子韋一日塵";
exports.qq="2309485575";

  

//Untitiled1.js
//引用創建好的Untitled2模塊
var myCard=require("./Untitled2");
console.log(myCard);

  

 

四、module

*基本包含了當前模塊的全部信息,創建模塊的事,module.exports也能辦到,而且這才是真正的老大,exports不過是module的小弟,好東西都要上交給module大媽的

在有exports例子的前提下,修改Untitled2.js文件,Untitled1.js不變

我把exports和module.exports相互交換,你們親自理解下

//Untitile2.js
//量身為我而做的名片模塊 //module.exports賦值成類型為字符串,不為對象,不受exports創建子集影響 module.exports="我是不會變成對象的"; exports.name="木人子韋一日塵"; exports.qq="2309485575";

  

//Untitled2.js
//量身為我而做的名片模塊
//module.exports類型想為對象,並創建子集,鳥都不鳥exports的請求
exports="我要變對象";
module.exports.name="木人子韋一日塵";
module.exports.qq="2309485575";

  

五、require

辛苦了require,把最簡單的你曬在了最后,這話沒毛病,白話講,它主要是能夠在當前模塊引入其它模塊,就是引入模塊,用法好說好說。

/*require()括號里可填絕對路徑或者相對路徑,只要擬引入路徑是指向后綴
名為js的文件,node老爺爺都會和藹地認同“它是模塊”,至於文件內容合不
合法,暫且不論*/
var myCard=require(__dirname+'/Untitled2.js');
/*如果是寫相對路徑的話,要注意一點,同級文件名稱要改為./統計文件名稱
,至於還有什么要注意的,暫且不論*/
console.log(myCard);

  

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM