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,'应用')
相关推荐
GISer_Jing22 分钟前
[本周五题]Javascript面试常考题&手撕&场景UR缓存、new关键字、大数相加、最长递增子序列、高并发请求、大文件上传和WebWorks
开发语言·javascript·面试
好_快29 分钟前
Lodash源码阅读-baseIndexOf
前端·javascript·源码阅读
古柳_Deserts_X34 分钟前
这个强大的插件能让网页里的 Shader 代码一览无余
前端·webgl·three.js
好_快35 分钟前
Lodash源码阅读-indexOf
前端·javascript·源码阅读
积水成江39 分钟前
【Vue3+Vite指南】全局引入SCSS文件后出现Undefined mixin?一招解决命名空间陷阱!
前端·vue.js·html5·scss
一个处女座的程序猿O(∩_∩)O42 分钟前
harmonyOS NEXT开发与前端开发深度对比分析
前端·华为·harmonyos
泫凝1 小时前
NPM 常用操作指令大全
前端·npm·node.js
小妖6661 小时前
nexus搭建npm私服
前端·npm·node.js·nexus
momo(激进版)1 小时前
前端如何实现生成excel文件,并下载
前端·excel