模塊化
可以將一些公共的程式碼抽離成為一個單獨的 JS 文件,作為一個模組。模組只有透過 module.exports 或 exports 才能對外暴露介面。
TIP
exports 是 module.exports 的一個引用,因此在模組裡邊隨意更改 exports 的指向會造成未知的錯誤。所以更推薦開發者採用 module.exports 來暴露模組接口,除非您已經清晰知道這兩者的關係。
js
// common.js
function sayHello(name) {
console.log(Hello ${name} !)
}
function sayGoodbye(name) {
console.log(Goodbye ${name} !)
}
module.exports.sayHello = sayHello
exports.sayGoodbye = sayGoodbye文件作用域
在JavaScript文件中聲明的變量和函數只在該文件中有效; 不同的文件中可以聲明相同名字的變量和函數,不會互相影響。
全域對象
類似瀏覽器的 Window 和 NodeJS 的 global,小遊戲也有一個全域對象 GameGlobal。透過 GameGlobal 可以在多個檔案中傳遞變數。
js
// a.js
GameGlobal.globalData = 1js
// b.js
console.log(GameGlobal.globalData) // output "1"