[读书笔记]js函数参数的按值传递

来源:互联网 发布:吉林农产品交易所 知乎 编辑:程序博客网 时间:2024/05/22 05:25
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指向的对象。

原创粉丝点击