js设计模式:桥接模式

作用:

可以将复杂的类进行一些拆分,让抽象和实现进行分离解耦,可以让每一个部分都可以单独维护

方便扩展和维护

示例:

javascript 复制代码
        class Obj {
            constructor(person) {
                this.person = person
                this.name = person.name
            }
            getHobby(){
                return this.person.hobby
            }
            getBehavior(){
                return this.person.behavior()
            }
        }

        class Human {
            constructor(hobby) {
                this.name = '打工人'
                this.hobby = hobby
            }
            behavior() {
                console.log('一身打工人的怨气')
            }
        }
        class Deity {
            constructor(hobby) {
                this.name = '神仙'
                this.hobby = hobby
            }
            behavior() {
                console.log('过着神仙般的生活')
            }
        }

        const wjt = new Obj(new Human('抖音刷美女,或者打游戏'))
        const sunwukong = new Obj(new Deity('定身七仙女,然后吃桃子'))

        console.log(wjt.name+'的爱好:'+wjt.getHobby())
        console.log(sunwukong.name+'的爱好:'+sunwukong.getHobby())
相关推荐
RJiazhen1 分钟前
论前端第三方库的技术选型 —— 以 Jodit Editor 为例
前端·前端工程化
用户8168694747253 分钟前
React 如何用 MessageChannel 模拟 requestIdleCallback
前端·react.js
izx8884 分钟前
从 Buffer 到响应式流:Vue3 实现 AI 流式输出的完整实践
javascript·vue.js·人工智能
heyCHEEMS5 分钟前
手搓 uniapp vue3 虚拟列表遇到的坑
前端
Duck不必6 分钟前
紧急插播:CVSS 10.0 满分漏洞!你的 Next.js 项目可能正在裸奔
前端·next.js
幸运小圣7 分钟前
动态组件【vue3实战详解】
前端·javascript·vue.js·typescript
用户413079810617 分钟前
终于不漏了-Android开发内存泄漏详解
前端
孟祥_成都7 分钟前
nest.js / hono.js 一起学!hono的设计思想!
前端·node.js
努力glow .9 分钟前
彻底解决VMware下ROS2中gazebo启动失败的问题
前端·chrome
阿笑带你学前端9 分钟前
开源记账 App 一个月迭代:从 v1.11 到 v2.2,暗黑模式、标签系统、预算管理全面升级
前端