《JavaScript高级程序设计(第3版)》 第二天 变量、作用域和内存问题

/*======================================================
*@author wf_Huang
*@Time 2018/8/29 20:54
*=======================================================
*@function  参数传递
* 今天看到这个地方让我想起来以前遇到的一下面试题,
* 很恶心,实际开发根本就不怎么会用
*=====================================================*/
function setName(obj) {
    obj.name = 'Nicholas' ;
    obj = new Object() ;
    obj.name = 'Greg' ;
}

var person = new Object() ;
setName(person) ;
console.log(person.name) //Nicholas 不运行说实话我是靠猜的

/*======================================================
*@author wf_Huang
*@Time 2018/8/29 21:11
*=======================================================
*@function  作用域链
*=====================================================*/
function buildUrl() {
    var qs = '?debug=true'
    with (location){
        var url = href + qs ;
    }
    return url ;
}

console.log(buildUrl());

 ps:说实话没看懂with作用没看太明白,百度了一下,直白点就是这个解释程序将检查 location是否是本地函数。如果不是,它将检查伪对象 location,看它是否为该对象的方法。

猜你喜欢

转载自blog.csdn.net/weixin_42406046/article/details/82193130