今天又看到一本干貨滿滿的動(dòng)物書,短小精悍,與js啟示錄帶來的感覺一樣
(1)重新聲明一個(gè)已有的變量,則并不會(huì)將該變量的值設(shè)置回undefined
var q = 22;
var q;
// q仍為22;
(2)可以用字母數(shù)字下劃線$來命名變量,但不能以數(shù)字開頭
(3)typeof 操作符總是返回一個(gè)字符串
(4)作用域
var weight = 140;
function lose(weight){
console.log(weight); //140
//雖然有變量提升,但是優(yōu)先級(jí)沒有參數(shù)高
var weight = 135;
}
lose(weight);
//140 函數(shù)作用域內(nèi)變量無法訪問
console.log(weight);
函數(shù)內(nèi)提升的局部變量優(yōu)先級(jí)沒有參數(shù)高
函數(shù)中變量修改
如果沒有傳入?yún)?shù),并且對(duì)函數(shù)進(jìn)行了調(diào)用,是可以修改外部變量的

image.png
當(dāng)變量作為參數(shù)傳入,再進(jìn)行修改,外部是不起作用的

image.png
函數(shù)與變量提升,相互賦值

image.png
-
result:
image.png
(1)
閉包是函數(shù)與聲明該函數(shù)的詞法環(huán)境的組合
