js中的变量提升和函数提升

红太狼 2022-12-04 01:13 378阅读 0赞

1.变量声明提升:
通过var定义(声明)的变量,在定义语句之前就可以访问到,值为undefined
2.函数声明提升
通过function声明的函数,在之前就可以直接调用,值为:函数定义(对象)
3.变量提升和函数提升如何产生?
js中js引擎会优先解析var变量和function定义,在预解析完成后从上到下执行,所以在定义之前就可以访问到通过var定义的变量和function定义的函数

  1. var a=3;
  2. function fn(){
  3. console.log(a);//undefined
  4. var a=4;
  5. }
  6. fn();
  7. fn2();
  8. fn3();//不能调用,使用的是函数提升
  9. function fn2(){
  10. console.log('fn2');
  11. }
  12. var fn3 = function(){
  13. console.log('fn3');
  14. }

发表评论

表情:
评论列表 (有 0 条评论,378人围观)

还没有评论,来说两句吧...

相关阅读