题解 | #Getter#
Getter
https://www.nowcoder.com/practice/e7f3a2f429d945e49f5b48ef1065beda
<!DOCTYPE html> <html> <head> <meta charset=utf-8> </head> <body> <script type="text/javascript"> class Rectangle { // 补全代码 constructor(height, width) { this.height = height this.width = width } get area() { return this.height * this.width } } </script> </body> </html>
这段代码是JavaScript中的一个简单的类定义,它使用了一种叫做"getter setter"的设计模式。
在面向对象编程中,"getter setter"是一种常见的设计模式,用于控制对类的属性的访问和修改。在这个例子中,`height`和`width`是私有属性,不能直接被外部访问。但是,通过定义`get area()`方法,我们可以间接地获取这两个属性的乘积作为矩形的面积。
这种方式的好处是可以在不改变原有数据结构的情况下,增加新的功能。例如,我们可以在`get area()`方法中添加一些逻辑,比如计算面积并返回结果,或者在计算面积时进行一些其他的操作。
总的来说,"getter setter"模式提供了一种灵活的方式来控制对类的属性的访问和修改,使得类的行为更加可预测和可控。