Skip to content

Node.js 與 npm 簡介#

node.js#

Node.js 是一個基於 Chrome V8 JavaScript 引擎的開放原始碼、跨平台的 JavaScript 執行環境。

特點:#

  • 非同步事件驅動架構:使用非同步 I/O 模型,能有效處理大量的並行連線。
  • 輕量且高效:是建立於事件迴圈與非阻塞 I/O 的基礎上,因此非常適合即時應用。
  • 統一語言:開發者可以用同一種語言(JavaScript)來撰寫前端和後端程式碼。

npm#

npmNode Package Manager)是 Node.js 的套件管理工具,讓 Node.js 的開發者,直接利用、擴充線上的第三方套件庫(packages registry),加速軟體專案的開發。

npm

功能:#

  • 安裝套件:可以從線上的 npm 套件庫中安裝數以萬計的 JavaScript 套件。
  • 版本管理:管理套件版本,確保相依性的一致性。
  • 腳本執行:透過 package.json 定義指令腳本,執行開發或部署任務。
  • 本地與全域安裝:套件可依需求安裝在專案目錄或全域環境。

常見指令:#

  1. 安裝 Node.js 和 npm(安裝 Node.js 後會自動包含 npm)。

  2. 初始化專案:

    npm init
    
    npm_init

    或快速初始化:

    npm init -y
    
    npm_init

    package name:   # 專案名稱: 只能小寫字母、不能有空白、不能使用 node 或 npm 字眼
    version:        # 版本: 定義專案的版本號碼,格式為 主版本.次版本.修訂版
    description:    # 描述: 簡短定義專案用途或功能
    entry point:    # 入口點: 專案的主要檔案
    test command:   # 測試指令: 測試專案時執行的命令
    git repository: # 專案的 git 的 URL
    keywords:       # 關鍵字: 與專案有關的關鍵字,有助於在 npm 套件庫中搜尋
    author:         # 作者: 專案作者
    license:        # 授權: 專案的授權方式
    
  3. 安裝套件:

    • 本地安裝(專案中使用)
      npm install <package-name>
      
    • 全域安裝(全域命令使用)
      npm install -g <package-name>
      
    • 下載完成之後會多個 package-lock.json 檔案跟 node_modules 資料夾
      • package-lock.json
      • node_modules
  4. 卸載套件:

    npm uninstall <package-name>
    

  5. 更新套件:

    npm update
    

  6. 執行腳本: 在 package.json 中定義腳本後,執行:

    npm run <script-name>
    


開始使用 Node.js 與 npm#

  1. 下載與安裝 Node.js
  2. 推薦選擇 LTS(Long Term Support)版本。

  3. 驗證安裝:

  4. 檢查 Node.js 版本:
    node -v
    
  5. 檢查 npm 版本:

    npm -v
    

  6. 創建第一個 Node.js 應用程式: 建立一個名為 app.js 的檔案:

    const http = require('http');
    
    const server = http.createServer((req, res) => {
        res.statusCode = 200;
        res.setHeader('Content-Type', 'text/plain');
        res.end('Hello, Node.js!\n');
    });
    
    server.listen(3000, () => {
        console.log('伺服器正在 http://localhost:3000 運行');
    });
    

  7. 執行應用程式:

    node app.js
    


References#