【javascript设计模式】3.Revealing Module(揭示)模式
⭐️ 本文首发自 前端修罗场(点击加入),是
一个由 资深开发者 独立运行 的专业技术社区
,我专注Web 技术、Web3、区块链、答疑解惑、面试辅导以及职业发展
。博主创作的 《前端面试复习笔记》(点击订阅),广受好评,已帮助多人提升实力、拿到 offer。现在订阅,私聊我即可获取一次免费的模拟面试机会
,帮你评估知识点的掌握程度,获得更全面的学习指导意见!
该模式能够在私有范围内简单定义所有的函数和变量,并返回一个匿名对象, 它拥有指向私有函数的指针,该函数是他希望展示为公有的方法。
示例:
<script>var myRevealingModule = function () {var privateVar = "Ren Cherry",publicVar = "Hey there";function privateFunction() {console.log("Name:"+privateVar);}function publicSetName(strName) {privateName = strName;}function publicGetName() {privateFunction();}//将暴露的公有指针指向到私有函数和属性上return {setName: publicSetName,greeting: publicvar,getName: publicGetName};}();myRevealingModule.setName("Paul Kinlan");
</script>
优点:
- 该模式很容易之处哪些函数和变量可被公开访问,改善了可读性。
- 如果一个私有函数引用一个公有函数,在需要打补丁时,公有函数是不能被覆盖的。
因为私有函数将继续引用私有实现,该模式并不适用于公有成员,只使用函数。
【javascript设计模式】3.Revealing Module(揭示)模式相关推荐
- 《JavaScript设计模式与开发实践》模式篇(12)—— 装饰者模式
在传统的面向对象语言中,给对象添加功能常常使用继承的方式,但是继承的方式并不灵活, 还会带来许多问题:一方面会导致超类和子类之间存在强耦合性,当超类改变时,子类也会随之 改变;另一方面,继承这种功能复 ...
- JavaScript设计模式系列四之外观模式(附案例源码)
文章初衷 设计模式其实旨在解决语言本身存在的缺陷, 目前javaScript一些新的语法特性已经集成了一些设计模式的实现, 大家在写代码的时候,没必要为了用设计模式而去用设计模式, 那么我这边为什么还 ...
- 《JavaScript设计模式与开发实践》模式篇(5)—— 观察者模式
发布-订阅模式又叫观察者模式,它定义对象间的一种一对多的依赖关系,当一个对象的状 态发生改变时,所有依赖于它的对象都将得到通知.在 JavaScript 开发中,我们一般用事件模型 来替代传统的发布- ...
- 《JavaScript设计模式与开发实践》模式篇(3)—— 代理模式
代理模式是为一个对象提供一个代用品或占位符,以便控制对它的访问 故事背景: 假设当 A 在心情好的时候收到花,小明表白成功的几率有 60%,而当 A 在心情差的时候收到花,小明表白的成功率无限趋近于 ...
- 设计模式(9)[JS版]-JavaScript设计模式之如何实现桥接模式???
目录 1 什么是桥接模式 2 参与者 3 实例讲解 4 总结 1 什么是桥接模式 Bridge模式允许两个组件,即客户端和服务一起工作,每个组件都有自己的接口.Bridge是一种高级架构模式,它的主要 ...
- JavaScript 设计模式 : 巧用'工厂模式'和'创建者'模式
我为什么把他们两个放在一起讲?我觉得这两个设计模式有相似之处,有时候会一个设计模式不能满足你的需求而采用另一种设计模式.基于这点考虑,而且为了大家更好地理解,我放到了一起,加深大家的印象,活学活用. ...
- javascript设计模式-Constructor(构造器)模式
Constructor是一种在内存已分配给该对象的情况下,用于初始化新创建对象的特殊方法.Object构造器用于创建特定类型的对象–准备好对象以备使用,同事接收构造器可以使用参数,以在第一次创建对象时 ...
- Javascript设计模式(四)-- 建造者模式
定义 建造者模式:将一个复杂对像的构建层与其表示层相互分离,同样的构建过程可采用不同的表示. 与之前的模式比较 工厂模式主要是为了创建对象实例或者类簇(抽象工厂),关心的是最终产出(创建)的是什么.不 ...
- Javascript设计模式(五)代理模式
使用者无权访问目标对象,通过代理做授权和控制 代理模式是一种非常有意义的模式.在生活中也能找到代理模式的情景,比如,明星都有经纪人作为代理,如果想请明星来办一场商业演出,只能联系他的经纪人,经纪人会把 ...
最新文章
- 使用Git分布式版本控制系统
- springboot整合ElasticSearch出现的问题
- linux创建mysql视图,MySQL视图入门浅析
- python汇率编程_【菜鸟学Python】案例一:汇率换算
- 延边大学计算机金小峰,第九届中国信息安全博士论坛在我校开幕
- vue-cli安装和使用
- Linux入门学习(四)
- linux 基础学习入门 5 inode 总结 tr tee 等小命令
- 存储过程中while循环
- python数据分析-Python数据分析从小白到高手的几个步骤
- Debian, Ubuntu 和 Linux Mint 中安装WPS
- 网络营销练习题(黑大电商专业kaoti)
- 51单片机串行口波特率计算
- TCP/IP基础知识
- 【复数表达】Deep Complex Network
- Kotlin苦海无涯(四) Object
- unreal——UnrealBuildTool : error : Unable to deleteXXXX
- 顺丰科技运维开发工程师二面面经
- 计算机专业读书推荐卡图片大全,如何完成实践作业《好书推荐卡》,大家谈
- 【35】WEB安全学习----XST攻击