标签:javascript
变量声明应该在作用域的顶端,但是赋值没有。function example(){ var declaredButAssigned; //如下输出 declaredButNotAssigned 未定义 console.log(declaredButNotAssigned) declaredButNotAssigned = true }
匿名表达式能提升他们的变量名,但不能提升函数赋值。
function example(){ console.log(anonymous); //未定义 anonymous();//类型错误 var anonymous = function(){ console.log('anonymous function expression'); } }
function example(){ console.log(AAA);// undefined AAA();//TypeError AAA is not a function BBB();//ReferenceError BBB is not define var AAA = function BBB(){console.log('Hi~~')}; }
//当变量名同函数名称一样 function example2(){ console.log(AAA);// undefined AAA();//TypeError var AAA = function named(){console.log('Hello');}; }
function example(){ AAA(); function AAA(){ console.log('Hi~~'); } }
标签:javascript
原文地址:http://blog.csdn.net/princeterence/article/details/45815369