js设计模式:外观模式

作用:

将复杂的功能封装成可以简单调用的方法,无需知道内部的具体逻辑,只需要知道怎么去使用

类似于一把枪,你可以不知道内部的枪机,击发机,复进簧,枪管,导气装置,弹夹是怎么合作配合完成发射和自动填弹,你只需要知道你扣动扳机就能完成这一系列复杂的操作,而那个扳机就是外观的一个接口

示例:

javascript 复制代码
        const wjt = {
            name:'王惊涛',
            code:()=>{
                console.log('会写代码')
            },
            game:()=>{
                console.log('会打游戏')
            },
            love:()=>{
                console.log('热爱美女')
            }
        }

        const sunwukong = {
            name:'孙悟空',
            change:()=>{
                console.log('72变化')
            },
            fly:()=>{
                console.log('腾云架雾')
            },
            immobilize:()=>{
                console.log('会定身术')
            }
        }

        const sunwutao = {
            name:'孙悟涛',
            code:()=>{
                wjt.code()
            },
            love:()=>{
                wjt.love()
            },
            change:()=>{
                sunwukong.change()
            },
            fly:()=>{
                sunwukong.fly()
            },
            immobilize:()=>{
                sunwukong.immobilize()
            },
        }

        sunwutao.love()
        sunwutao.immobilize()

相关推荐
Hello--_--World8 小时前
vite:什么是热更新?vite 和 webpack 有什么区别?vite常见配置和优化手段?
前端·webpack·node.js
渡我白衣8 小时前
定时器与时间轮思想
linux·开发语言·前端·c++·人工智能·深度学习·神经网络
鹏程十八少8 小时前
13. Android 面了50位Kotlin候选人,这36个语法坑90%的人答不全
前端·后端·面试
蜡笔小马8 小时前
06.C++设计模式-装饰模式
c++·设计模式·装饰器模式
Highcharts.js8 小时前
Highcharts React v5版本迁移的核心注意事项和步骤清单
开发语言·javascript·react.js·前端框架·highcharts
Hello--_--World8 小时前
Vite:什么是bundleless?哪些要打包,哪些不要打包?依赖预构建是什么?依赖预构建如何减少网络请求的?esbuild 又是什么?
前端·javascript·webpack·vite
Rooting++8 小时前
vue2+webpack打包优化的相关问题
前端·webpack·node.js
alxraves8 小时前
超声图像前端信号处理的关键技术
前端·fpga开发·信号处理
问心无愧05138 小时前
ctf show web入门47
前端·笔记
web守墓人8 小时前
【神经网络】js版本的Pytorch,estorch重磅发布
前端·javascript·人工智能·pytorch·深度学习·神经网络