变量提升及代码执行阶段

Js入门与实战 admin 529浏览
<script>
var a=1;
function f1(){
var a=2;
}
//全局变量和局部作用域:函数里面的就是局部作用域,函数外面的就是全局作用域
</script>
<script>
var f2=function(){
var a=1;
}
f2();
console.log(a);
var a=2;
</script>
<script>
//变量提升:在代码执行之前变量已经在编译阶段被声明了
console.log(a);//undefined
var a=2;
/*
JS代码的运行分为2个阶段
1:解析(编译)阶段:语法检查,变量及函数进行声明
2:运行阶段:变量赋值,代码流程的执行
*/
var a;
console.log(a);
var a=2;
</script>

转载请注明:大灰牛博客 » 变量提升及代码执行阶段