美文网首页
前端进阶|第五天 const,let,var作用域问题

前端进阶|第五天 const,let,var作用域问题

作者: 皮卡球ca | 来源:发表于2019-10-17 16:17 被阅读0次

    首先先看代码

            let alet = 20;
            const aconst = 10;
            var avar = 15;
            console.log(alet);
            console.log(aconst);
            console.log(avar);
            debugger;
    

    运行截图如下


    image.png

    会发现,let和const 定义的变量都属于块级作用域,而var为全局(顶级)作用域。
    因此var 定义的变量是可以通过window访问的,let和const则不支持。

     let alet = 20;
            const aconst = 10;
            var avar = 15;
            {
                var ainvar = 10;
                const ainconst = 5;
                {
                    const ainconst2 = 11;
                }
            }
            debugger;
            console.log(ainvar);
            console.log(ainconst);
            console.log(ainconst2);
            debugger;
    

    把代码稍微改良一下,会发现,var是可以自动升域的,而const和let是不行的,如果在块内用const定义,外层是无法访问,而var可以。


    image.png

    相关文章

      网友评论

          本文标题:前端进阶|第五天 const,let,var作用域问题

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