首页 > 试题广场 >

请问以下JS代码最终输出的结果是() let count =

[单选题]
请问以下JS代码最终输出的结果是()
let count = 0;
class cls {
    constructor() {
        count++;
    };
};
class son extends cls {};
new son();
new son();
console.log(count);


  • 报错
  • 2
  • 1
  • 0
这道题考察的是JavaScript中的类和继承。 首先,我们来看代码: ```javascript let count = 0; class cls { constructor() { count++; } } class son extends cls {} new son(); new son(); console.log(count); ``` 分析这段代码: 1. `count` 初始值为 0。 2. 定义了一个类 `cls`,在构造函数中将 `count` 自增 1。 3. 定义了另一个类 `son`,它继承自 `cls`。 4. 创建了两个 `son` 类的实例。 5. 最后输出 `count` 的值。 每次创建 `son` 类的新实例时,都会调用其构造函数。由于 `son` 继承自 `cls`,因此它会调用 `cls` 的构造函数。这意味着每创建一个 `son` 实例,`cls` 的构造函数就会被调用一次,从而将 `count` 增加 1。 具体步骤如下: - 第一次创建 `son` 实例:`count` 变为 1。 - 第二次创建 `son` 实例:`count` 变为 2。 因此,最终输出的 `count` 值是 2。 所以正确答案是 B. 2。
发表于 2025-04-14 11:54:48 回复(0)