|
发表于 2023-5-10 21:11:09
|
显示全部楼层
当`fun1()`被调用时,它定义了一个全局变量`var`并将其初始化为字符串" Hi "。在第5行,它更新了全局变量`var`的值为" Baby "。
接下来,`fun1()`返回调用另一个函数`fun2(var)`的结果。在`fun2(var)`中,在第9行代码中,使用 `+=` 操作符连接字符串 “I love you” 来更新传递给 `fun2()` 的参数 `var` 的值,即使这个值是从调用函数 `fun1()` 中传递的,因此字符串变量 var 的值现在为 " Baby I love you"。
然后,`fun2()`调用 `fun3(var)`,但是在 `fun3`中,对 `var` 进行赋值 "小甲鱼" 并没有影响到 `var` 的值,它只是将 `var` 绑定到一个新对象上,因此不会改变 `var` 的值。 最后,在main函数中,打印由 `fun1()` 返回的 `fun2(var)` 的结果, `fun2(var)` 的值为 "Baby I love you" ,因此这就是将会被打印到控制台上的值。
有用请设置最佳答案 |
|