美文网首页
js里没有块级作用域

js里没有块级作用域

作者: 臭臭臭魁 | 来源:发表于2016-02-26 10:19 被阅读276次

    问题:定义在for循环或if{var x}里面的变量是否能在for循环之外访问到??

    for (var i = 0; i < 10; i ++){   
      var color = "red";
    }
    console.log(i,color)//10,red
    

    答案是肯定能访问到 变量i和color;
    因为在js里是没有块级作用域的,写在花括号{}里面是代码块, 而js里没有块级作用域的概念,所以在代码块依然可以访问到代码块里面的变量。
    下面这个写法和上面的效果是一样的。。自行对比一下啊

    var color = "red";
    for (var i = 0;i < 10; i ++){
    
    }
    console.log(i,color)//10,red
    

    前几天被人问到这个问题,差点狗带了。。正天在用for循环,却不知道这个问题??我要面壁思过了。。
    要想装的一手好逼,还要刻苦努力学习啊。。切记!!切记!!!

    相关文章

      网友评论

          本文标题:js里没有块级作用域

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