函數聲明提升,變量聲明提升
- 變量聲明提升
-
- 釋義
- 示例
- 函數聲明提升
-
- 釋義
- 示例
變量聲明提升
釋義
在js中存在着變量聲明提升,在var聲明的情況下,先定義變量指派,後聲明,程式并不會報錯;且正常運作;在es6中已新增const,let兩種聲明方法,在此聲明中不會出現聲明提升的現象,若如此則會有報錯,使程式無法運作;
示例
-
1 變量聲明提升,變量指派不會被覆寫;
a = 1; var c = 1; var a; console.log('a = ', a); // a = 1
-
2 變量聲明提升,變量指派不會被覆寫;
var c = 1; a= 2; var a; console.log('a = ', a); // a = 2
函數聲明提升
釋義
在js中存在變量聲明提升,故也有函數聲明提升,且函數聲明提升會覆寫變量聲明提升;
示例
-
1 函數聲明提升,變量指派不會被覆寫;
var c = 1; var a= 2; function a() { return true;}; console.log('a = ', a); // a = 2
-
2 函數聲明提升,變量指派不會被覆寫;
var c = 1; var a; function a() { return true;}; console.log('a = ', a); // a = function