以下javascript代码的输出结果是:( ) var a = {}; a.value = 1; (function(b){ b.value++; b.value+=a.value; })(a); console.log(a.value);
时间: 2024-04-03 21:31:26 浏览: 42
输出结果是 3。
解释如下:
首先创建了一个空对象 a,然后给 a 添加了一个属性 value 并赋值为 1。
然后定义了一个立即执行函数表达式(IIFE),将 a 作为参数传入,参数名为 b。在函数内部,先对 b 中的 value 属性进行自增操作,此时 b.value 的值为 2。然后将 a.value 的值(即 1)加到 b.value 上,最终 b.value 的值为 3。
由于 a 和 b 指向同一个对象,所以在函数内部修改了 b 的属性值,同时也改变了 a 的属性值。最后输出 a.value,结果为 3。
阅读全文