針對Node.js來談談 require、module以及exports 模組設定。這些概念允許開發者將大型程序分解成小的、可管理的、可重用的部分,稱為模塊。
下面將逐一介紹這些概念,以及它們如何與 JavaScript 關聯。
An Essential Guide to Node.js Modules (javascripttutorial.net)
在 Node.js 中,每一個文件都被視為一個獨立的模組系統。
當你創建一個 JavaScript 檔案,你實際上創建了一個模塊。這個模塊可以包含變數、函數、類等,並且可以選擇性地對外暴露或封裝其功能。
require 是一個用來加載模塊的函數。當你需要在一個模塊中使用另一個模塊提供的功能時,你可以使用 require 函數。這個函數接受一個模塊的路徑作為參數,並返回該模塊對外暴露的對象。
我們有一個名為 app.js 的文件,提供了一個加法函數:我們有一個名為 data.js 的文件,提供了一個物件資料:
var content =require('./data');
var a=3;
console.log(a);
console.log(content); exports 與 module.exports 的不同!
exports和module.exports,用於將模塊內的函數和對象暴露給使用該模塊的文件。
module.exports 是暴露模塊的主要對象。當你將一個模塊導入另一個文件時,你實際上獲得的是 module.exports 的內容。exports 是 module.exports 的一個參考,方便將多個對象或函數暴露給外部。通常,如果你想從一個模塊導出單一對象(如函數、類等),你可以直接使用 module.exports。如果你想導出多個對象或函數,你可以使用 exports。
使用 module.exports 導出物件內的資料:
var data =2;
module.exports = {
content: data,
title:'title'
}; '/單獨變數可使用/'
exports.data =2;
exports.bark = function(){
return 'bark!!';
}
'/包裹大物件使用/'
module.exports ={
data:1
} 一般來說,我們要包裹底層商業邏輯,用module.exports 局多!
import 與 export 在Node.js 有提到其用法: Node.js require、module以及exports 模組設定 - Hugo Habor 每一個Javascript檔案可當作獨立模組系統(ES Module) 1. Module(模組)…
作者今天遇到一個很奇怪的問題 寫程式寫到一半... 點擊應用程式時... 怎麼都跳不出畫面... 後來查詢了一下是Reg註冊可能被微軟更新給搞掉了... 文章資訊來源: 【以解決】各位.exe檔案打不開,不要相信"在 Windows 7 或 Windows Vista 中無法打開 .EXE 檔案"這篇文章…
Node.js可以提供你很多模組,今天來探索如何使用 Node.js 的 http 模組來架設一個簡單的伺服器。 本篇使用模組require 載入你所需要的模組。這次我們使用'http' 模組來創造一個簡單的server。 資料參考 Node.js - createServer 起手式 - iT…
像是很多專案必須讀取國家資料中心的metadata,許多檔案格式為CSV、JSON、Html可以利用網頁技術去爬蟲;拿一個範例來嘗試看看就知道這些語法的實際用途。 [主題週]專題報導-開放資料 (Open Data)相關議題與應用 (114230) - Cool3c 在這裡我們使用台北市資料大平台 UBike2.0 作為資料依據! 目的 來抓取空位數量 >15, 抓取空位數量 <15。…
當你想要呼叫陣列裡的資料,你可以使用forEach()的方法,forEach() 會需要隱含數的觀念。 把我們想要執行的函式,從頭到尾逐一(iterates through)的把陣列裡的元素帶進去這個函式,整個處理一遍。 第一個參數遍歷的元素(按照元素順序顯示),第二個參數是 index,即使你改了參數名字,第一個也一定是遍歷的元素,第二個一定是 index。 https://twitter.com/tejinder_id/status/1487347914628235264 參考資料: 想知道嗎:JS forEach()的 index 位置 - W.S.Wade…