課程連線:【web前端全棧成長計畫-二階段正式開啟】0基礎前端開發者養成記,課程免費參與有獎!
課程質量還是不錯的,理論與實踐結合,沿著html/css-》js、ajax-》node.js、vue的路線學習,有考核還有專門的學習社群,安利一下~
2 js的作用域和作用域鏈
3 js的預解析
簡單資料型別按照值傳遞
function
testargs
(argu)
argu =1;
console.
log(
testargs
(argu));
// 2
console.
log(argu)
;// 1
複雜資料型別按照位址傳遞
function
person
(name)
function
f1(x)
var p =
newperson
("blate");
console.
log(p.name)
;// "blate"
f1(p)
;// p將其儲存的位址傳給了形參x
console.
log(p.name)
;// "mike"
function
getsum
(num1, num2)
getsum(1
);// 1 + undefined -> nan
arguments是每個函式內建的乙個物件,裡面按照偽陣列的形式儲存了所有傳遞過來的實參
利用函式關鍵字自定義函式(命名函式)
函式表示式宣告(匿名函式)
var
fun=
function
(name)
;fun
("ygj");
// 呼叫函式
**名字(變數)起作用和效果的範圍,目的是為了提高程式的可靠性,更重要的是減少命名衝突
es6之前:全域性作用域和區域性作用域
es6中新增了塊級作用域,即{}作用域,如if(){}, for(){}
2.3 作用域鏈
概念:內部函式訪問外部函式的變數,採取的是鏈式查詢的方式來決定取哪個值,這種結構稱為作用域鏈,即就近原則分析方法:站在目標出發,一層一層往外找(必要時可畫圖輔助分析)
functionf1(
)f2()
;}var num =
456;f1(
);// 輸出結果是0
預解析 :js引擎會把js裡面所有的var和function提公升到當前作用域的最前面(變數放在更前面)
**執行:按照**書寫的順序從上往下執行
變數提公升:把所有變數宣告提公升到當前作用域最前面(不提公升賦值操作)
e.g.1
直接執行console.log(num)
會報錯,但執行下面的**則會報undefined
console.
log(num)
;var num =
10;
原因就是js引擎按照變數預解析把上面**轉換成了下面的實際**
var num;
console.
log(num)
;num =
10;
e.g.2
執行
var
fun=
function()
;fun()
;
正常,但執行
fun()
;var
fun=
function()
;
則會報錯函式未定義,原因也是預解析的問題。
js引擎按照變數預解析把上面**轉換成了下面的實際**:
var fun;
fun();
fun=
function()
;
函式提公升:把關鍵字宣告的函式宣告提公升到當前作用域最前面(不呼叫函式)
e.g.3
如下**可以正常執行就是js引擎執行了函式提公升
fun()
;function
fun(
);
案例1
var num =10;
functionfn(
)fn()
;
var num;
functionfn(
)num =10;
fn();
案例2
f1()
;console.
log(c)
;console.
log(b)
;console.
log(a)
;functionf1(
)
functionf1(
)f1()
;console.
log(c)
;console.
log(b)
;console.
log(a)
;// 報錯
web前端全棧0基礎到精通(祺)10
多欄布局解決方案 document center left right 優化 品質 使用精靈圖 測試檢查 1 做完的頁面要與設計稿進行比對,保證對設計稿 95 以上的還原度。1 頁面模組的完整性,保證頁面不出現模組丟失 尤其是懸浮的側邊欄 彈窗 下拉列表等 2 字型 字型大小 文字顏色的一致性 3 ...
web前端全棧0基礎到精通(祺)12
css3簡介 css3新增選擇器 以box結尾 包含box 結構性偽類選擇器 last child 選擇器 用於選取屬於其父元素的最後乙個子元素的指定選擇器 nth child n 選擇器 匹配屬於其父元素的第n個子元素,n可以是數字 關鍵字或公式 nth last child 選擇器 匹配屬於其元...
web前端全棧0基礎到精通(祺)13
css3過渡屬性 transition duration 規定完成過渡效果需要多少秒或毫秒。transition timing function規定速度效果的速度曲線。transition delay 定義過渡效果從何時開始。transition屬性簡寫 css3的 transform 屬性 瀏覽器...