解决方案 »

  1.   


    他的例子里,arguements[0]=null后,x不也变成null了吗??
      

  2.   

    原文意思是:
    var y = {};
    function a(x){
      x = 0;
    }a(y);
    alert(typeof y);//object
      

  3.   

    这不就是引用传递么?例子1:var obj = {},
        obj1 = obj;
    function f1(_obj){
        _obj.name = "123";
    }
    f1(obj1);
    alert(obj.name);//123例子2:var obj = {},
        obj1 = obj;
    function f2(_obj){
        _obj = {name : "123"};
    }f2(obj1);
    alert(obj.name);//undefined上面两个例子obj与obj1都是同一个引用例子1:
    f1改变了obj1引用的副本,所以影响到了obj,打印出123例子2:
    f2改变了obj1引用的地址,也就是楼主的问题“对一个引用的改变”,它不会改变另一个引用,所以没有影响到obj,打印出undefined
      

  4.   

    这本书中文名叫【javascript权威指南】