with语句延长作用域链时,在with中定义变量为何可以在外边访问到?

function buildUrl() { 
    var qs = "?debug=true"; 
 
    with(location){ 
        var url = href + qs;         
    } 
 
    return url; 
}

既然with语句是把with花括号里面的内容添加到作用域链前端,那with定义的这个变量对象里定义的变量,为何可以在外面访问到?

阅读 3.2k
推荐问题