iT邦幫忙

2022 iThome 鐵人賽

DAY 3
0
Modern Web

Node.js系列 第 3

DAY 3 Node.js跟JavaScript的關係

  • 分享至 

  • xImage
  •  

DAY 3 Node.js跟JavaScript的關係

https://tw.alphacamp.co/blog/node-js-and-javascript

{%hackmd BJrTq20hE %}

tags: 第 13 屆 iThome 鐵人賽 (2021)

Node.js 是什麼?

Node.js是由以下五個不同部分組成的:

  • ECMAScript : 語言基礎
  • OS : 及作業系統互動部分。
  • File : 檔案系統
  • Net : 網路系統
  • Database : 資料庫

Node.js是JS的執行環境,就如同網頁上的 JavaScript 是在瀏覽器的 JavaScript 引擎上執行,Node.js 就是一個能執行 JS 的環境,而 V8 則是主流瀏覽器 - Google Chrome 的 JavaScript 引擎,負責解析、執行 JavaScript,也就是負責實踐 ECMAScript 規範中定義的部份;另外,V8 是開源的專案,有興趣的讀者可以參照 Google Git - V8。

Node.js 以 V8 為核心,加上一系列 C/C++ 的套件,成功的讓 Server 端也可以執行 JavaScript。

Node.js 優點

JavaScript 是一個事件驅動的語言,透過事件迴圈,能讓執行緒幾乎不會被卡住;而這樣的特性,非常適合用來接收高併發(High Concurrency)的請求,伺服器在高併發的情況下,很容易就會由於應接不暇而無法服務新的流量;但 Node.js 會將每個 request 變成事件迴圈中待處理的事件,主執行緒只負責承接、轉拋、回應,並持續的在事件迴圈中循環,一切都以事件為核心在驅動程式運行,自然也就不會出現執行緒卡死的現象。

明天就是實做的第一步 「安裝配置與 npm 包管理器」環節拉!

參考資料:


上一篇
Day 2 Node.js是什麼?又為何JavaScript可以領導市場?
下一篇
DAY 4 安裝配置與 npm 包管理器
系列文
Node.js30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言