计算属性
本课属于 Coddy JavaScript 学习旅程的“面向对象编程”单元。第 44 课,共 56 课。
计算属性是用于计算并返回值的 getter,而不是只返回存储的数据。它们看起来像普通属性,但会即时计算值。
我们来看这个例子。我们有一个带有普通属性的对象:
const circle = {
radius: 5
};现在,我们使用 getter 添加一个计算属性:
const circle = {
radius: 5,
get diameter() {
return this.radius * 2;
}
};我们这样访问计算属性:
console.log(circle.diameter); // 输出:10如果我们更新半径,直径也会自动更新:
circle.radius = 10;
console.log(circle.diameter); // 输出:20当属性的值取决于其他属性或需要经过计算时,计算属性就很有用。
挑战
已为你提供一个带有宽度和高度属性的 Rectangle 类。你的任务是添加计算属性,用于计算面积和周长。
- 计算属性
area,返回宽度 × 高度 - 计算属性
perimeter,返回 2 ×(宽度 + 高度)
亲手试试
import { Rectangle } from './rectangle.js';
// 测试代码,请勿修改
const rect = new Rectangle(5, 10);
console.log(`Area: ${rect.area}`); // 应输出 "Area: 50"
console.log(`Perimeter: ${rect.perimeter}`); // 应输出 "Perimeter: 30"这节课包含一个小测验。开始学习即可作答,并记录你的进度。
面向对象编程中的所有课
8整理 OOP 代码
将类组织到模块中自己练习: JavaScript 在线编译器