Javascript变量提升

这里涉及到作用域的问题,对此不理解的朋友请参考http://www.jianshu.com/writer#/notebooks/10770812/notes/10177256,这是我写过的一篇关于js中变量作用域的文章;

在Javascript中,存在一种变量提升的现象,下面我们通过简单的小例子来解释下什么是变量提升。


很明显,此时输出的是10;

好的,我们继续往下看:


Javascript变量提升_第1张图片

如果这个是一个面试题,面试官问你这个结果是多少?你会怎么回答?

哈哈,不卖关子了,这个例子的结果是不是很有趣,此时控制台打印出来的结果是undefined;

这就是我在文章开头所说的js中的变量提升问题,我们先来了解什么是变量提升;

顾名思义,变量提升,就是将存在于下面的变量,提升到上面去;

但提升的只是变量,值不提升;

具体的过程如下:


Javascript变量提升_第2张图片

你可能感兴趣的:(Javascript变量提升)