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())
相关推荐
少年姜太公14 小时前
什么?还不知道git cherry pick?
前端·javascript·git
白兰地空瓶16 小时前
🏒 前端 AI 应用实战:用 Vue3 + Coze,把宠物一键变成冰球运动员!
前端·vue.js·coze
Liu.77417 小时前
vue3使用vue3-print-nb打印
前端·javascript·vue.js
松涛和鸣18 小时前
Linux Makefile : From Basic Syntax to Multi-File Project Compilation
linux·运维·服务器·前端·windows·哈希算法
dly_blog18 小时前
Vue 逻辑复用的多种方案对比!
前端·javascript·vue.js
万少18 小时前
HarmonyOS6 接入分享,原来也是三分钟的事情
前端·harmonyos
烛阴18 小时前
C# 正则表达式:量词与锚点——从“.*”到精确匹配
前端·正则表达式·c#
wyzqhhhh19 小时前
京东啊啊啊啊啊
开发语言·前端·javascript
JIngJaneIL19 小时前
基于java+ vue助农电商系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
想学后端的前端工程师19 小时前
【Java集合框架深度解析:从入门到精通-后端技术栈】
前端·javascript·vue.js