js设计模式:享元模式

作用:

当需要处理很多非常类似操作的时候,可以创建可以共享的对象,并暴露接口供其他对象调用

这个对象内包含这些操作的处理逻辑,可以优化性能

示例:

javascript 复制代码
        const Ipad = function(){
           const apps = {}

           const useApp = function(appName,appFun){
                  if(apps[appName]){
                    return apps[appName]
                  }
                  const app = {
                    appName:appName,
                    appFun:appFun
                  }
                  apps[appName] = app
                  return app
           }
           return { useApp }
        }

        const ipad = new Ipad()
        const bilibili = ipad.useApp('bilibili','学习编程技术')
        const jingdong = ipad.useApp('jingdong','网购使用')
        const lolm = ipad.useApp('lolm','游戏娱乐')
         
        console.log(ipad,'平板')
        console.log(bilibili,jingdong,lolm,'应用')
相关推荐
galaa20111 分钟前
TypeScript设计模式(12):桥接模式
设计模式·typescript
Moment1 分钟前
前端性能指标 —— FMP
前端·javascript·面试
爱上大树的小猪6 分钟前
【前端实战】Flex布局实战:打造经典自适应导航栏(附移动端折叠方案)
前端·javascript·flexbox
best6667 分钟前
前端开发如何处理竞态问题?
javascript·面试
Anlici17 分钟前
深入浅出Vue响应式原理:手把手解析Proxy与依赖追踪
前端·vue.js·面试
mon_star°20 分钟前
css实现报警特效
前端·css
AKA大佬20 分钟前
@aspnet/signalr服务器与客户端之间实时的双向通信
前端·angular.js
ak啊20 分钟前
AST 解析器 Parser
前端·webpack·源码阅读
北京_宏哥21 分钟前
🔥《手把手教你》系列练习篇之8-python+ selenium自动化测试(详细教程)
前端·python·selenium
刘同学有点忙21 分钟前
浏览器内置响应式编程?用 TC39 Signals 提案实现 TodoList
前端·响应式编程