javaScript设计模式:代理模式

代理模式的思想就是在对象与对象的客户端之间建立一个新的对象,这个新的对象负责执行原对象的职责与客户端进行交互。这与之前的外观模式的区别是,外观模式将原对象包装起来,真正执行任务的依然是原对象的本身。

比如在浏览器的网络请求中就是一种代理模式,在浏览器中通过JS实现的网络请求最终会通过浏览器的内核中的网络事件管理对象去执行网络请求任务。

说的简单点,js将网络请求数据交给浏览器的网络代理,网络代理将请求数据添加到自己身上去真正的执行网络请求。

设计模型:

复制代码
//服务的对象
let obj = {
    data:"aaa",
    fun:function(){
        return this.data;
    }
}
//客户对象
let obj2 = {
    fu:function(value){
        console.log(value);
    }
}
//代理对象
let age = {
    data:obj.data,
    f:function(){
        return this.data;
    }
}
复制代码

测试:

obj2.fu(obj.fun()); //aaa
obj2.fu(age.f()); //aaa

代理模式的关键代理对象负责代替原对象执行相关任务,并不改变原对象的功能。

posted @   他乡踏雪  阅读(91)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示