function setName(obj){ obj.name='test'; obj=new Object() obj.name='test1'; }var person=new Object(); setName(person); console.log(person.name);//输出test
上面中函数的参数是按值传递的,假如是按照引用传递obj被修改的时候,person也被修改了。
在引用类型传递给函数的参数的时候,person保存的值被复制了一份给函数的参数,该值是指向对象的应用。函数中obj=new Object()相当于修改了内部的obj,这时obj不再指向person指向的对象。
以上是js函数参数的按值传递解释的详细内容。更多信息请关注PHP中文网其他相关文章!