//變數提升:var宣告的變數(除函式內),值提升變數的宣告,
// console.log(i);
// var i=0;
// console.log(i);
//函式提升:字面量宣告的函式,提升整個函式體
// f70();
// function f70() {
// console.log(1);
// }
// function f70() {
// console.log(f70); //un
// var f70 = "ABC";
// console.log(f70); //abc
// var f70 = function() {}
// console.log(f70); //fn
// var f70 = 123;
// console.log(f70); // 123
// }
// f70();
// 執行背景關系的生命周期:
// 1、創建(變數和函式的提升)
// 2、執行:函式體的代碼(改變當前變數和全域變數的值)
//執行堆疊:存放執行背景關系(最底下的是GO,最上面正在呼叫的函式)
//注:FILO、進堆疊(壓堆疊),出堆疊
// 3、銷毀
// 全域執行背景關系
// 1、 全域物件window
// 區域執行背景關系
// 1、 創建區域物件AO Active Object
// 2、 預編譯
// a > 形參 變數
// b > 形參 變數賦值 un
// c > 形參和實參相統一
// d > 函式提升
// e > 確定this的指向( 由呼叫者確定)
// f > 確定作用域( 詞法環境, 在哪里宣告, 就確定在哪里)
// g > 初始化作用域鏈
// 3、 執行函式體代碼
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/191498.html
標籤:JavaScript
