二 、 js中变量和函数声明的提升
1. js 中变量和函数的声明会提升到最顶部
2. 函数的提升会高于变量的提升
3. 函数内部如果用var声明了相同名称的外部变量,函数将不再向上寻找。
4. 匿名函数不会提升
5. 不同<script>块中的函数互不影响。
例子 1: 函数的声明高于变量
a).
var a ;
function a(){}
typeof a
"function" //输出
b).
function a(){}
var a ;
typeof a
"function" //输出
c).
//声明了变量的同时赋值
function a() {}
var a = 1;
alert(typeof a); //number,此时不是function了。
//说明:"var a=1"相当于"var a;a=1",即先声明,后赋值,"a=1"相当于把a重新赋值了,自然就是number!
网友评论