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

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

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

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