JavaScript变量提升(Hoisting)的小案例

变量提升(Hoisting)的小案例

执行以下代码的结果是什么?为什么?

答案

这段代码的执行结果是undefined 和 2

这个结果的原因是,变量和函数都被提升(hoisted) 到了函数体的顶部。因此,当打印变量a时,它虽存在于函数体(因为a已经被声明),但仍然是undefined。换言之,上面的代码等同于下面的代码:

 

 

posted @ 2018-12-24 09:26  Mahmud(مەھمۇد)  阅读(269)  评论(0编辑  收藏  举报