原创 深入學習js之——執行上下文

在《深入學習js之——執行上下文棧》中說過,當JavaScript代碼執行一段可執行代碼(executable code)時,會創建對應的執行上下文(execution context) 對於每一個執行上下文,都有三個重要的屬性: 變量對象

原创 深入學習js之——作用域鏈

開篇 作用域是每種計算機語言最重要的基礎之一,因此要想深入的學習JavaScript,作用域和作用域鏈就是個繞不開的話題。 在《深入學習js之—-執行上下文棧》中我們提到過,當JavaScript代碼執行一段可執行代碼(executable

原创 深入學習js之——執行上下文和執行棧

開篇 作爲一個JavaScript的程序開發者,如果被問到JavaScript代碼的執行順序,你腦海中是不是有一個直觀的印象 -- JavaScript 是順序執行的,可事實真的是這樣的嗎? 讓我們首先看兩個小例子: var foo =

原创 深入學習js之——詞法作用域和動態作用域

開篇 當我們在開始學習任何一門語言的時候,都會接觸到變量的概念,變量的出現其實是爲了解決一個問題,爲的是存儲某些值,進而,存儲某些值的目的是爲了在之後對這個值進行訪問或者修改,正是這種存儲和訪問變量的能力將狀態給了程序。我們的程序中到處都充

原创 深入學習js之——原型和原型鏈

開篇: 在Brendan Eich大神爲JavaScript設計面向對象系統的時候,借鑑了Self 和Smalltalk這兩門基於原型的語言,之所以選擇基於原型的面向對象系統,並不是因爲時間匆忙,它設計起來相對簡單,而是因爲從一開始Bren