测试你的技能:面向对象的 JavaScript

本技能测试旨在评估您是否理解了我们的 JavaScript 中的类 文章。

注意:您可以在此页面上的交互式编辑器中或在线编辑器(如 CodePenJSFiddleGlitch)中尝试解决方案。如果代码中存在错误,它将记录在此页面上的结果面板或 JavaScript 控制台中。

如果您遇到困难,您可以通过我们的一些 沟通渠道 与我们联系。

OOJS 1

在本任务中,我们为您提供了一个 Shape 类的定义的开头。它有三个属性:namesidessideLength。此类仅对所有边都具有相同长度的形状(如正方形或等边三角形)进行建模。

我们希望您

  • 向此类添加一个构造函数。构造函数接受 namesidessideLength 属性的参数,并初始化它们。
  • 向类添加一个名为 calcPerimeter() 的新方法,该方法计算其周长(形状外边缘的长度)并将结果记录到控制台。
  • 创建一个名为 squareShape 类的新实例。为其提供 namesquare4sides 以及 sideLength5
  • 在实例上调用您的 calcPerimeter() 方法,以查看它是否按预期将计算结果记录到浏览器的控制台。
  • 创建一个名为 triangleShape 新实例,其 nametriangle3sides 以及 sideLength3
  • 调用 triangle.calcPerimeter() 以检查它是否正常工作。

尝试更新下面的实时代码以重新创建完成的示例

下载此任务的起点 以在您自己的编辑器或在线编辑器中使用。

OOJS 2

接下来,我们希望您创建一个继承自 ShapeSquare 类,并添加一个计算正方形面积的 calcArea() 方法。还要设置构造函数,以便 Square 对象实例的 name 属性自动设置为 squaresides 属性自动设置为 4。因此,在调用构造函数时,您只需提供 sideLength 属性。

创建一个名为 squareSquare 类实例,并设置适当的属性值,并调用其 calcPerimeter()calcArea() 方法以显示其正常工作。

尝试更新下面的实时代码以重新创建完成的示例

下载此任务的起点 以在您自己的编辑器或在线编辑器中使用。