使用Node編寫應用程序主要就是在使用:
- EcmaSricpt語言
- 和瀏覽器不一樣,在Node中沒有BOM, DOM
- 核心模塊
- 文件操作的fs
- http 服務的http
- url 路徑操作模塊
- path 路徑處理模塊
- os 操作系統信息
- 第三方模塊
- art-template
- 必須通過npm來下載才可以使用
- 自己寫的模塊
- 自己創建的文件
CommonJS模塊規范
在Node中的javascript還有一個很重要的概念:模塊系統
- 模塊作用域
- 使用require方法用來加載模塊
~~~
var name = require ('模塊');
~~~
- 使用exports接口對象用來導出模塊中的成員
- 導出多個成員(必須在對象中):
~~~
exports.a = 123;
exports.c = function(){
console.log(123);
};
~~~
- 導出單個成員(拿到的就是函數,字符串):
~~~
module.exports = 'hello'
//后者會覆蓋前者
module.exports = function(x, y){
return x + y;
}
~~~
- module.exports也可以導出多個成員:
~~~
module.exports = {
add: function() {
return x + y;
},
str: 'hello'
~~~
~~~
// require是一個方法
// 它的作用就是用來加載一個模塊
// 在Node中,模塊有三種
// 具名的核心模塊,例如 fs, http
// 用戶自己編寫的文件模塊
// 相對路徑必須加 ./
// 后綴名可以省略
console.log('開始執行a');
require('./b.js')
console.log('a執行結束');
~~~
在Node中,沒有全局作用域,只有模塊作用域,外部訪問不到內部,內部也訪問不到內部,這就是模塊作用域
但是可以被exports導出