参考:某个大佬的博客

以下原创:

<script type="text/javascript">
    console.log(a);
    a = 100;
</script>

上面这个例子结果是 a is not defined.

<script type="text/javascript">
    console.log(a);
    var  a = 100;
</script>

而加了 var之后,结果就是undefined。为什么?因为JavaScript有变量提升机制,var  a;会在使用a之前执行。