代理模式是一种结构型设计模式,它允许我们使用代理对象来控制对原始对象的访问。代理模式通常用于在不改变原始对象的情况下,增加额外的功能或限制对原始对象的访问。
在JavaScript中,代理模式可以通过创建一个代理对象,该对象具有与原始对象相同的接口,并根据需要调用原始对象的方法或添加额外的逻辑。以下是一个示例:
// 原始对象
class RealImage {
constructor(filename) {
this.filename = filename