本篇文章就给大家介绍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中文网其它相关文章!
网站建设是一个广义的术语,涵盖了许多不同的技能和学科中所使用的生产和维护的网站。……