javascript 适配、代理、装饰者模式的比较

适配器模式:将一个类(对象)的接口(方法或属性)转化成客户希望的另外一个接口(方法或属性),使得原本由于接口不兼容而不能一起工作的那些类(对象)可以正常协作。简单理解就是为兼容而生的 “转换器”。

代理模式:使用者无权访问目标对象,中间加代理,通过代理做授权和控制

装饰者(decorator)模式,又名装饰器模式,能够在不改变对象自身的基础上,在程序运行期间给对像动态的添加职责。与继承相比,装饰者是一种更轻便灵活的做法。

适配器: 特点在于兼容,并不预处理请求,直接将请求转接给原方法,新方法与原方法名可以不同。比如兼容接口请求,旧的 ajax 成功适配成新的 fetch 请求; 还有兼容不同浏览器之间的事件处理
代理: 特点在于隔离,要访问本体,要先访问下代理对象,起到保护的作用。控制对本体对象的访问。代理提供的方法提倡与本体方法名相同,比如预加载,以及经纪人与明星的事
装饰者: 特点在于增强,为对象添加功能,可添加多次(比如即打印日志,又添加方法说明),形成装饰链,而适配器或代理只会对原有对象包装一次。比如 React 高阶组件

装饰者模式是“新增行为”,代理模式是“控制访问行为”,适配器模式是"转换行为"。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值