var aa = {a: 1};var bb = aa;bb = {};console.log(aa); // {a: 1}var aa = {a: 1};var bb = aa;bb.a = 2;console.log(aa); // {a: 2}有些不解, 为什么第一段代码的aa不是{}, 遇见{}就会重新在堆中建立一个新内容吗?顺便问下利用这种特性, 有哪些衍生的奇淫巧技?高级编程3中4.1.3中关于函数参数传递的部分解释的好像有误啊, 如果按照大家给出的答案, 不知道是不是翻译错了, 书里用参数是值传递来解释上面的问题(其实书里关于这里的描述有一段本身就有语病, 不知道是不是翻译错了?)
添加回答
举报
0/150
提交
取消