iT邦幫忙

2025 iThome 鐵人賽

DAY 2
0
佛心分享-IT 人自學之術

欸欸!! 這是我的學習筆記系列 第 2

Day2 - Node.js 基礎知識 & 安裝

  • 分享至 

  • xImage
  •  

前言

之前對 Node.js 一直停在很初淺的狀態,總想著裝起來能用就好了,只想快點開始做功能,這次就趁這個機會再多認識 Node.js 一點,不要一直停留在很陌生的狀態,但目標沒有很遠大,比生魚片還不生即可。
https://ithelp.ithome.com.tw/upload/images/20250915/20177951LkeTMIMnJ5.jpg

初識 Node.js

Node.js 是一個開源、跨平台的 JavaScript 運行環境,它讓開發者可以在瀏覽器之外執行 JavaScript 程式。Node.js 使用 Google Chrome 的 V8 JavaScript 引擎,能夠高效地執行 JavaScript 代碼。它主要用於構建可擴展的網絡應用程式,特別是伺服器端應用。

核心特點

  • 非阻塞 I/O:使用事件驅動、非阻塞 I/O 模型,使其輕量又高效
  • 單線程:使用單線程事件循環處理多個連接
  • 跨平台:可在 Windows、macOS、Linux 和其他平台上運行
  • 強大的生態系統:npm (Node Package Manager) 提供了世界上最大的開源代碼生態系統

V8 引擎

V8 是用 C++ 寫的,它負責執行 JavaScript 代碼,將 JavaScript 轉換成機器碼直接執行,而不是通過解釋器逐行執行。

主要應用場景

  • Chrome 瀏覽器:作為瀏覽器的 JavaScript 執行引擎
  • Node.js:讓 JavaScript 能在服務器端運行
  • Electron:用於開發桌面應用程式

核心技術特色

  • JIT 編譯:使用即時編譯技術,將熱點代碼編譯成優化的機器碼,大幅提升執行效率
  • 垃圾回收:採用分代垃圾回收機制,自動管理記憶體,包括新生代和老生代的不同回收策略
  • 隱藏類:通過隱藏類優化物件屬性存取,讓 JavaScript 物件的存取速度接近靜態語言

架構設計

V8 採用多線程架構,主執行緒負責 JavaScript 執行,額外的線程處理垃圾回收和代碼編譯優化等工作。
V8 的高效能讓 JavaScript 從早期的簡單網頁腳本語言,發展成能夠用於複雜應用開發的現代程式語言,是現代 Web 開發和 Node.js 生態系統的重要基石。

一些補充比較

  • chrome => V8 (性能最好)
  • Firefox => SpiderMonkey
  • Safari => JSCore(也稱為 Nitro)
  • IE => Chakra
  • Edge => 最初基於Chakra,但最近使用 Chromium和 V8 引擎進行了重建

安裝 Node.js

Node.js 官網
https://ithelp.ithome.com.tw/upload/images/20250915/20177951ekfdcG5hLy.png
選擇 LTS 版本(Long Term Support),如果選擇 Current,有可能會出現某些套件不支援的狀況,
抓下來後跟著引導一步一步安裝即可。

安裝完成後打開 CMD 輸入 node -v,看到版本後就代表安裝成功了。
https://ithelp.ithome.com.tw/upload/images/20250915/20177951FNcU87uwhl.png

也可以再試著開啟 VS Code,建立一個 index.js 檔案,輸入 node all.js 看看結果。
https://ithelp.ithome.com.tw/upload/images/20250915/20177951NFZQ8dGkdl.pnghttps://ithelp.ithome.com.tw/upload/images/20250915/20177951sPvXml6PKw.png

這樣我們就完成了 Node.js 基本的安裝和使用測試。

參考資料

Node.js 中文官網
全端勇士之路 Node.js 基礎學習-基礎篇


上一篇
Day1 - 參賽原由
下一篇
Day3 - Node.js NVM
系列文
欸欸!! 這是我的學習筆記6
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

2
Ray
iT邦研究生 3 級 ‧ 2025-09-16 14:28:57

突然發現自己的文章是參考文章 XD
趁機會推薦一下 2023 年時參加鐵人賽寫的系列會比較新~

Node.js 不負責系列:把前端人員當作後端來用,就算是前端也能嘗試寫的後端~原來 Node.js 可以做這麼多事~》

ayeaye iT邦新手 5 級 ‧ 2025-09-16 20:35:02 檢舉

謝謝Ray教練~ 馬上蒐藏起來XD

我要留言

立即登入留言