Udemy — JavaScript: The Advanced Concepts — JavaScript Foundation 筆記
本文是 JavaScript: The Advanced Concepts (2022 Update) 的筆記,紀錄課程重點與相關文章索引,推薦給前端一年左右經驗學習,面試前也可以快速掃過本文,有許多常見面試題目,JS 基本觀念。
Published in
Dec 25, 2021
Interpreter and Compiler : 將高階語言翻譯成機器碼的過程有兩種,分別為編譯(Compile)與直譯(Interpret),而負責翻譯的軟體就稱為編譯器(Compiler)與直譯器(Interpreter)。
(一)編譯(Compile)
是先將程式全部翻譯成機器碼後,電腦再一次執行這些機器碼,將來再執行該程式,只要直接執行機器碼,不需要再重新編譯。
(二)直譯(Interpret)
每完成一段程式語言的翻譯後執行一段機器碼,接著繼續翻譯,直到程式語言結束為止。
JavaScript 编译 — JIT (just-in-time) compiler 是怎么工作的 : 與直譯(Interpret)一樣,JIT編譯器不斷地進行翻譯,但是對編譯後的代碼進行快取可以最大限度地減少在給定執行期間將來執行相同代碼的延遲。
Node.js、瀏覽器 是執行環境(runtime)
執行環境(runtime)就是讓你的程式語言執行的一個軟體。JavaScript 內建的 Library 有限,我們使用的很多 API 都是執行環境提供的,且不同的執行環境有不同的執行方式。