node.js基礎:模塊的建立和引入

  模塊多是一個文件,也多是包含一個或多個文件的目錄。若是模塊是個目錄,node.js一般會在這個目錄下找一個叫index.js的文件做爲模塊的入口。node

  典型的模塊是一個包含exports對象屬性定義的文件,這些屬性能夠是任意類型的數據,好比字符串、對象和函數。json

  建立一個模塊 函數

//person.js
var name = 'lbs';
var age = 10;
function sayName(){
	console.log( name );
}
function sayAge(){
	console.log( age );
}
exports.sayName = sayName;
exports.sayAge = sayAge;

   引入一個模塊ui

//index.js
var person = require('./person');
person.sayName();
person.sayAge();

   require函數以要用的模塊的路徑爲參數。this

   引入一個以 ./ 開頭的模塊意味着:當前文件和被引用的文件屬於同一級目錄(這裏的person.js 和 index.js 位於同一個目錄下)。spa

   引入時 .js 擴展名能夠忽略。prototype

   若是須要從模塊中獲得單個變量、函數或者對象,用module.exports對象

//person.js
var Person = function(){
	this.name = 'lbs';
	this.age = 10;
};
Person.prototype = {
	sayName: function(){
		console.log( this.name );
	},
	sayAge: function(){
		console.log( this.age );
	}
};
module.exports = Person;

//index.js
var Person = require('./person');
var person = new Person();
person.sayName();
person.sayAge();

   若是模塊是目錄,在模塊目錄中定義模塊的文件必須被命名爲index.js。除非在這個目錄下一個叫package.json的文件裏特別指明。要指定一個取代index.js的文件,package.json文件裏必須有一個用JavaScript對象表示法(JSON)數據定義的對象,其中有一個名爲main的鍵,指明模塊目錄內主文件的路徑。接口

     exports是模塊的公開接口ip

   require從外部獲取一個模塊接口(獲取的模塊是exports對象)

相關文章
相關標籤/搜索