1、js解釋過程分為預編譯(預處理)和執行期。
預編譯期 js會對本**塊
(兩個script塊互不影響)中的所有var宣告的變數和函式進行處理(類似與c語言的編譯)
此時處理函式的只是宣告式函式,而且變數也只是進行了宣告但未進行初始化以及賦值。
執行期 會按照**塊的順序築行執行
2、把執行方法寫在函式定義之前是不太規範的。
所以,建議和優化如下:
1.函式體內變數最好var宣告為區域性,保持安全性和區域性性。
2.所有變數的宣告最好一次性寫在作用域的頂端3.
函式的執行方法 最好在 函式的定義 之後
JS 之 預解釋
1 js中的記憶體空間分為兩種 棧記憶體 堆記憶體 棧記憶體 提供js 執行的環境 儲存基本資料型別的值 全域性作用域或私有作用域都是棧記憶體。堆記憶體 儲存引用資料型別的值 物件是把屬性名和屬性值儲存進去 函式是把函式體中的 當做字串儲存進去。2 當瀏覽器載入html頁面的時候,首先會提供乙個供j...
js中var self this的解釋
每個函式在定義被ecmascript解析器解析時,都會建立兩個特殊的變數 this和arguments,換句話說,每個函式都有屬於自己的this物件,這個this物件是在執行時基於函式的執行環境繫結的,即在全域性物件中,this指向的是window物件 在自定義函式中,this物件指向的是呼叫這個函...
js引入和直譯器
行內式 解除安裝標籤內部的js 使用量小 內聯式寫在script標籤內的js 例子 外鏈式 使用script標籤 src屬性引入外部js檔案,內部寫的js 不起作用 例子 1.直接彈窗 alert 今天天氣真好 2.彈出輸入框 prompt 請問你今年幾歲了 3.在控制台列印資料 console.l...