這一章做者講了一個例子,就是在用單例模式生成一個dom節點,還要作到只有訪問的時候才建立,後續訪問直接用前面建立的。
那麼實際開發中咱們會用到這個模式嗎?
如今咱們基本都是用vue,react,angular開發,不太會直接去操做dom。那這個給咱們的意義在哪裏呢?
其實吧,若是你寫react,你會發現單例無處不在。
好比你設置一個antd的modal,通常狀況下你會經過設置visible去顯示或者隱藏modal。其實這個modal能夠說是單例模式,由於它只建立了一次,每次關閉只是改變了css樣式的display。目的是爲了優化性能不用每次去建立一個dom。
還有就是你在文件中引入的變量也是單例。
好比a.js文件中css
export const fruits = ['apple', 'banana', 'pear'];
當你在某個組件裏面引入這個變量。那麼若是你改變它vue
import {fruits} from './a.js'; fruits.push('grape');
那麼當頁面沒刷新,全部引用的地方都會被改變,這時很容易引發的bug。
因此程序在引入文件的時候用了單例模式,一個文件實例化一次,這種作法無疑是好的,可是也容易引發bug。
在咱們平時的開發過程當中,能夠借鑑這兩種方式去緩存變量,節點等。可是也要注意不要隨意改變。react
上一章-前言segmentfault