选择题1146/1588输出什么?

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);
难度:
2021-07-02 创建

本题为单选题”

参考答案:

正确选项:D:3

输出是 3

在这段代码中,我们定义了一个名为 Counter 的类,它具有一个 count 属性和一个 increment 方法。当我们创建一个 counterOne 实例时,它的 count 属性被初始化为 0

然后,我们通过调用 counterOne.increment() 两次来增加 counterOne 对象的 count 值,使其变为 2

接下来,我们将 counterOne 赋值给 counterTwo,这实际上是将对同一个对象的引用赋值给了另一个变量。因此,counterTwocounterOne 引用相同的对象。

然后,我们调用 counterTwo.increment(),这会导致 count 属性再次增加 1,所以最终 counterOne.count 的值为 3

由于 counterOnecounterTwo 都引用同一个对象,因此无论通过哪个引用来修改属性,都会反映在该对象上。

最近更新时间:2023-12-18

赞赏支持

预览

题库维护不易,您的支持就是我们最大的动力!