美文网首页
js函数与变量提示提升的问题

js函数与变量提示提升的问题

作者: 好名字都让你们用了 | 来源:发表于2019-07-01 15:55 被阅读0次

    1:作用域

    函数时唯一一个可以创建作用域的对象

    • 什么是作用域
      就是某个变量起作用的范围
    • 全局作用域
      在页面的任意位置可以访问的作用域,在script标签构成的

    2:变量和函数的提升

    js的执行过程:
    预解析阶段:变量和函数的提升(声明提前);
    变量和函数的提升
    js代码时一个从上至下逐步解析的过程,这个过程之前会把所有的变量和函数提前声明.

    console.log(a);   //undefined 而不是报错
        var a = 10;
        f1();   //f1而不是报错
        function f1(){
            console.log("f1");
        }
    这段代码会先把var a与函数提前申明,如下所示:
    var a; //变量a 提前声明,但是没有赋值
    function f1(){//函数也会提前拿声明
    console.log("f1");
    }
    console.log(a);//声明没有定义,结果就是undefined
    a=10;
    f1(); //结果为f1
    

    **具体会出现的问题和集中情况:
    ①:变量和变量同名的情况,后面的变量会把前面的变量覆盖;

    var n1= "n1";
    console.log(n1);
    function
    
    
    
    

    相关文章

      网友评论

          本文标题:js函数与变量提示提升的问题

          本文链接:https://www.haomeiwen.com/subject/zuhsqctx.html