Hoisting是JavaScript 中的一種機制,它可以將變數和函數的宣告移到最頂端;讓我們可以在宣告它們之前使用變數和函數,也就是說:讓變數和函數可以先使用再聲明。
這篇文章就跟大家介紹JavaScript的提升機制(Hoisting),讓大家了解JS變數提升和函數提升,希望對你們有幫助。
JavaScript的提升機制(Hoisting)僅適用於宣告而非初始化;我們在使用變數和函數值之前,需要對它們進行初始化,賦值。 【相關影片教學推薦:JavaScript教學】
JavaScript變數提升
讓我們來看看變數提升的簡單例子。
//先使用变量 x x = "php中文网"; // 初始化变量 x,赋值为"php中文网" alert("变量x的值为:"+x); //弹窗显示 x(使用x) //后声明变量 x var x; // 变量 x的声明
這和下面的變數先宣告再使用的例子,結果是一樣的。
var x; // 声明 变量 x x = "php中文网"; // 初始化变量 x,赋值为"php中文网" alert("变量x的值为:"+x); //弹窗显示 x(使用x)
輸出結果:
#附註:不可以直接在變數宣告時,就初始化。例:
var x="php中文网";
這樣是不能提升的,下面我們來看兩個例子:
例1:
var x = "php中文网"; // 声明,初始化变量 x,赋值为"php中文网" var y = "网址为:www.php.cn"; // 声明,初始化变量 x,赋值为"php中文网" alert(x+"\n"+y); //弹窗显示 x(使用x)
輸出:
範例2:
var x = "php中文网"; // 声明,初始化变量 x,赋值为"php中文网" alert(x+"\n"+y); //弹窗显示 x(使用x) var y = "网址为:www.php.cn"; // 声明,初始化变量 x,赋值为"php中文网"
#輸出:
JavaScript函數提升
讓我們來看看變數提升的簡單例子。
//先使用函数 sum() alert("\nsum()的作用是:让两个数相加求和,则:\n\n"+"sum(10,20)=10+20="+sum(10,20)); //在声明函数sum() function sum(a,b) { return a+b; }
這和先宣告函數sum(),在使用,輸出結果一樣:
//在声明函数sum() function sum(a,b) { return a+b; } //输出函数 sum() alert("\nsum()的作用是:让两个数相加求和,则:\n\n"+"sum(10,20)=10+20="+sum(10,20));
效果圖:
##總結:以上就是本篇文章的全部內容,希望對大家的學習有所幫助。以上是JavaScript 提升(Hoisting)是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!