函数传参咱们每天都在用,可是大家真的了解嘛?就当大家很了解了,毕竟是一些基础的东西,我就写几个例子,不喜勿喷。数组
demo1:函数
var obj = {name: 'mirok'} function demo1(obj) { obj.name = 'july' } demo1(obj) console.log(obj.name) //july,命名参数的引用和外部一致
demo2:code
var obj = {name: 'mirok'} function demo2(obj) { obj.name = 'july' obj = new Object() obj.name = 'deny' } demo2(obj) console.log(obj.name) //july ,参数是按值传递,可是引用指向同一堆内存
demo3:内存
var obj = {name: 'mirok'} function demo3(obj) { arguments[0].name = 'july' } demo3(obj) console.log(obj.name) //july,arguments的修改和命名参数修改一致,可是argumetns数组由参入参数的数量决定,而不是命名参数的数量
就是引用类型值和基本类型值传值会有一点差别io