ECMAScript中所有的函数的参数都是按值传递的

看下面一段代码    

function setName(obj){
    obj.name='Nicholas';
    obj=new Object();
    obj.name="Greg";
}
var person=new Object();
setName(person);
alert(person.name);
   输出的结果是“Nicholas”而非“Greg”,在函数内部修改参数的值,原始的引用仍然保持未变,当在函数内部重写obj时,这个变量的引用是局部的,当该函数执行完后这个局部变量也就被销毁了。——摘自javascript高级编程第三版

   有人可能没听过ECMAScript这个东西,参考解释,顺带也解释了下javascript和jsscript。

   

    

posted on 2014-05-18 11:57  代码王子  阅读(102)  评论(0编辑  收藏  举报

导航