javascript设计模式与开发实践全书深度解析(一)之单例模式
栏目: JavaScript · 发布时间: 6年前
内容简介:这一章作者讲了一个例子,就是在用单例模式生成一个dom节点,还要做到只有访问的时候才创建,后续访问直接用前面创建的。那么实际开发中我们会用到这个模式吗?现在我们基本都是用vue,react,angular开发,不太会直接去操作dom。那这个给我们的意义在哪里呢?
这一章作者讲了一个例子,就是在用单例模式生成一个dom节点,还要做到只有访问的时候才创建,后续访问直接用前面创建的。
那么实际开发中我们会用到这个模式吗?
现在我们基本都是用vue,react,angular开发,不太会直接去操作dom。那这个给我们的意义在哪里呢?
其实吧,如果你写react,你会发现单例无处不在。
比如你设置一个antd的modal,一般情况下你会通过设置visible去显示或者隐藏modal。其实这个modal可以说是单例模式,因为它只创建了一次,每次关闭只是改变了css样式的display。目的是为了优化性能不用每次去创建一个dom。
还有就是你在文件中引入的变量也是单例。
比如a.js文件中
export const fruits = ['apple', 'banana', 'pear'];
当你在某个组件里面引入这个变量。那么如果你改变它
import {fruits} from './a.js'; fruits.push('grape');
那么当页面没刷新,所有引用的地方都会被改变,这时很容易引起的bug。
所以程序在引入文件的时候用了单例模式,一个文件实例化一次,这种做法无疑是好的,但是也容易引起bug。
在我们平时的开发过程中,可以借鉴这两种方式去缓存变量,节点等。但是也要注意不要随意改变。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 设计模式——订阅模式(观察者模式)
- 设计模式-简单工厂、工厂方法模式、抽象工厂模式
- java23种设计模式-门面模式(外观模式)
- 设计模式-享元设计模式
- Java 设计模式之工厂方法模式与抽象工厂模式
- JAVA设计模式之模板方法模式和建造者模式
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
JavaScript Patterns
Stoyan Stefanov / O'Reilly Media, Inc. / 2010-09-21 / USD 29.99
What's the best approach for developing an application with JavaScript? This book helps you answer that question with numerous JavaScript coding patterns and best practices. If you're an experienced d......一起来看看 《JavaScript Patterns》 这本书的介绍吧!