为了账号安全,请及时绑定邮箱和手机立即绑定

javascript 块级代码有什么作用

javascript 块级代码有什么作用

烙印99 2019-02-27 13:13:54
像图中,为何要弄一个单独的块
查看完整描述

2 回答

?
largeQ

TA贡献2039条经验 获得超7个赞

js作为一个只用了两个星期就完成设计编码的语言,一开始只有函数作用域。可以看一下面这段代码:


    functin exmple1(){ 

        for(var i=0;i<3;i++){ 

            //do something

        } 

        alert(i); 

    } 

在循环结束后,i仍然是可以访问的,它将存在于整个函数调用的生命周期中,直到example1方法调用结束。这样的后果就是别的程序员很可能对i变量带来误操作。


ES6对这个情况进行了改进,提出了用const和let声明变量。通过这两个修饰词声明的变量都会拥有块级作用域。块级作用域是指任何一对花括号({和})中的语句集。一旦一块代码执行完毕,那么这块代码声明的变量都将结束生命周期。因此,上面的代码可以更改为:


    functin exmple2(){ 

        for(let i=0;i<3;i++){ 

            //do something

        } 

        alert(i); 

    } 

此时alert(i)语句将会输出undefined。


查看完整回答
反对 回复 2019-03-02
?
温温酱

TA贡献1752条经验 获得超4个赞

ES6新增块级作用域主要为const和let消费的,你如果在块级作用域没有用let和const声明变量,其实等于if(true){}没有什么区别


查看完整回答
反对 回复 2019-03-02
  • 2 回答
  • 0 关注
  • 533 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信