iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 9
0
Modern Web

JavaScript 忍者的修練--從下忍進階到中忍系列 第 9

Day 09: Execution Context & Lexical Environment

  • 分享至 

  • twitterImage
  •  

Execution context

  • JavaScript 用來追踪函式執行的機制
  • 有全域和函式二種 execution context
  • 每次呼叫一個函式,都會建立一個新的 execution context,原本執行中的函式 execution context 會先暫停,等到新建立的執行完,才會繼續執行暫停的 execution context
  • JavaScript 追踪 execution contexts 的方法是運用堆疊(stack),又稱 call stack
  • Call stack 總是從 global execution context 開始,成為 stack 最底部的一層,這一層在生命週期內永遠不會消失

Lexical environment

  • 前面介紹過變數範圍,到底 JavaScript 是怎麼實現變數範圍的機制呢?靠的是 execution context 當中的 lexical environment。
  • 當進入一個新的 execution context 時,同時也會產生一個 lexical environment。
  • Lexical environment 可以看作是一組對照表,是 JavaScript 用來對照識別項(identifier)和變數(variable)的對照表。

上一篇
Day 08: Closure
下一篇
Day 10: JS的變數類型
系列文
JavaScript 忍者的修練--從下忍進階到中忍30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言