声明提前例题
Posted dcode
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了声明提前例题相关的知识,希望对你有一定的参考价值。
function fun(){ console.log(1); } fun(); //2 function fun(){ console.log(2); } fun(); //2 var fun=100; fun(); //报错,fun不是一个函数了
解析:
程序在执行前,都会先找到var声明得到变量和function声明的函数,提前到当前作用域的顶部,但是赋值会留在原地。
function fun(){console.log(1);} function fun(){console.log(2);}
|
所以第一次调用和第二次调用fun都输出2;然后将100赋值给了fun,所以第三次调用时,变量fun已经不是一个函数了,所以无法调用,调用了就会报错
以上是关于声明提前例题的主要内容,如果未能解决你的问题,请参考以下文章