资讯专栏INFORMATION COLUMN

javascript设计模式与开发实践全书深度解析(一)之单例模式

xioqua / 2383人阅读

摘要:所以程序在引入文件的时候用了单例模式,一个文件实例化一次,这种做法无疑是好的,但是也容易引起。在我们平时的开发过程中,可以借鉴这两种方式去缓存变量,节点等。

这一章作者讲了一个例子,就是在用单例模式生成一个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。
在我们平时的开发过程中,可以借鉴这两种方式去缓存变量,节点等。但是也要注意不要随意改变。

上一章-前言

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/109366.html

相关文章

  • JavaScript设计模式开发实践系列单例模式

    摘要:本系列为设计模式与开发实践作者曾探学习总结,如想深入了解,请支持作者原版单例模式实现单例模式单例模式的定义是保证一个类仅有一个实例,并提供一个访问它的全局访问点。 本系列为《JavaScript设计模式与开发实践》(作者:曾探)学习总结,如想深入了解,请支持作者原版 单例模式 实现单例模式 单例模式的定义是:保证一个类仅有一个实例,并提供一个访问它的全局访问点。单例模式是一种常用的模式...

    Airy 评论0 收藏0
  • javascript设计模式开发实践全书深度解析)之前言

    摘要:相信很多人都看过设计模式与开发实践这本书,每个人都有自己的体会感受,作为前端年开发经验的程序猿,用我自认为还可以的实践经验来与大家谈谈这本书。这章是前言,后面陆续会讲解每个设计模式。 相信很多人都看过《javascript设计模式与开发实践》这本书,每个人都有自己的体会感受,作为前端3年开发经验的程序猿,用我自认为还可以的实践经验来与大家谈谈这本书。这章是前言,后面陆续会讲解每个设计模...

    timger 评论0 收藏0
  • 设计模式单例模式

    摘要:最佳实践使用代理方式实现单例模式,使用一个代理函数来实现实单例例化原生的代码摘自设计模式与开发实践下来代理类测试函数返回版的用实现的单例模式代码已创建张三李四返回 说明:只要实例化一次,超过一次的实例化过程会返回之前实例化的结果,而不会在内存中再次写入新的实例对象。----类似于once。 需要遵守的原则:单一职责的原则,每一个类或者函数只负责一个功能。 最佳实践:使用代理方式实现单例...

    whinc 评论0 收藏0
  • 程序语言

    摘要:一面应该还问了其他内容,但是两次面试多线程面试问题和答案采访中,我们通常会遇到两个主题采集问题和多线程面试问题。多线程是关于并发和线程的。我们正在共享重要的多线程面试问题和答案。。 2016 年末,腾讯,百度,华为,搜狗和滴滴面试题汇总 2016 年未,腾讯,百度,华为,搜狗和滴滴面试题汇总 【码农每日一题】Java 内部类(Part 2)相关面试题 关注一下嘛,又不让你背锅!问:Ja...

    mtunique 评论0 收藏0
  • 程序语言

    摘要:一面应该还问了其他内容,但是两次面试多线程面试问题和答案采访中,我们通常会遇到两个主题采集问题和多线程面试问题。多线程是关于并发和线程的。我们正在共享重要的多线程面试问题和答案。。 2016 年末,腾讯,百度,华为,搜狗和滴滴面试题汇总 2016 年未,腾讯,百度,华为,搜狗和滴滴面试题汇总 【码农每日一题】Java 内部类(Part 2)相关面试题 关注一下嘛,又不让你背锅!问:Ja...

    stefan 评论0 收藏0

发表评论

0条评论

xioqua

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<