方法链模式
本课属于 Coddy JavaScript 学习旅程的“面向对象编程”单元。第 16 课,共 56 课。
方法链是一种编程模式,可以让你在一条语句中对同一个对象调用多个方法。每个方法都会返回对象本身(this),这样你就可以在同一行调用下一个方法。
创建一个简单的计数器对象:
const counter = {
count: 0,
increment() {
this.count++;
return this;
},
decrement() {
this.count--;
return this;
},
getValue() {
return this.count;
}
};现在你可以将多个方法串联起来:
// 链式调用多个操作
counter.increment().increment().decrement();
// 计数现在是 1
console.log(counter.getValue()); // 输出:1方法链式调用的关键是从你希望支持链式调用的每个方法中返回 this。
挑战
给你一个计算器对象,它已经有 add() 和 subtract() 方法。你的任务是添加 multiply 和 divide 方法,并让它们返回 this,以支持链式调用。
亲手试试
import { calculator } from './calculator.js';
// 测试代码,请勿修改
const result1 = calculator.add(10).multiply(2).getValue();
console.log(result1); // 应输出 20
// 为第二次测试重置
calculator.value = 0;
const result2 = calculator.add(20).divide(4).subtract(1).getValue();
console.log(result2); // 应输出 4这节课包含一个小测验。开始学习即可作答,并记录你的进度。
面向对象编程中的所有课
8整理 OOP 代码
将类组织到模块中自己练习: JavaScript 在线编译器