首页 > Web开发 > 详细

JS——作用域

时间:2016-03-28 18:24:27      阅读:206      评论:0      收藏:0      [点我收藏+]
    var v = "hello";
    function f() {
        alert(v);
        var v = "byebye";
        //函数作用域内的变量v【遮盖】了上层作用域变量v
    }
    /* function f() {
        var v;//声明提升
        alert(v);//此函数与上述等价
        v="byebye";
    } */
    f();//undefined
    alert(v);//hello
    var v = "hello";
    if (true) {
        alert(v);//hello
        var v = "byebye";
    }
    alert(v);//byebye

两点注意事项:

1.JS的变量声明具有hoisting(提升)机制,JavaScript引擎在执行的时候,会把所有变量的声明都提升到当前作用域的最前面

2.JS是没有块级作用域的。函数是JavaScript中唯一拥有自身作用域的结构

 

JS——作用域

原文:http://www.cnblogs.com/feile/p/5329772.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!