1class Counter { 2 constructor() { 3 this.count = 0; 4 } 5 6 increment() { 7 this.count++; 8 } 9} 10 11const counterOne = new Counter(); 12counterOne.increment(); 13counterOne.increment(); 14 15const counterTwo = counterOne; 16counterTwo.increment(); 17 18console.log(counterOne.count);
本题为“单选题”
参考答案:
正确选项:D:3
输出是 3
。
在这段代码中,我们定义了一个名为 Counter
的类,它具有一个 count
属性和一个 increment
方法。当我们创建一个 counterOne
实例时,它的 count
属性被初始化为 0
。
然后,我们通过调用 counterOne.increment()
两次来增加 counterOne
对象的 count
值,使其变为 2
。
接下来,我们将 counterOne
赋值给 counterTwo
,这实际上是将对同一个对象的引用赋值给了另一个变量。因此,counterTwo
和 counterOne
引用相同的对象。
然后,我们调用 counterTwo.increment()
,这会导致 count
属性再次增加 1
,所以最终 counterOne.count
的值为 3
。
由于 counterOne
和 counterTwo
都引用同一个对象,因此无论通过哪个引用来修改属性,都会反映在该对象上。
最近更新时间:2023-12-18