學(xué)習(xí)JavaScript設(shè)計(jì)模式之單例模式_javascript技巧
來源:懂視網(wǎng)
責(zé)編:小采
時(shí)間:2020-11-27 21:49:07
學(xué)習(xí)JavaScript設(shè)計(jì)模式之單例模式_javascript技巧
學(xué)習(xí)JavaScript設(shè)計(jì)模式之單例模式_javascript技巧:一、定義 保證一個(gè)類僅有一個(gè)實(shí)例,并提供一個(gè)訪問它的全局訪問點(diǎn)。 當(dāng)單擊登陸按鈕,頁面中出現(xiàn)一個(gè)登陸浮窗,這個(gè)登陸浮窗是唯一的,無論單擊多少次登陸按鈕,這個(gè)浮窗都只會(huì)被創(chuàng)建一次,那么這個(gè)登陸浮窗就適合用單例模式來創(chuàng)建。 二、實(shí)現(xiàn)原理 要實(shí)現(xiàn)單
導(dǎo)讀學(xué)習(xí)JavaScript設(shè)計(jì)模式之單例模式_javascript技巧:一、定義 保證一個(gè)類僅有一個(gè)實(shí)例,并提供一個(gè)訪問它的全局訪問點(diǎn)。 當(dāng)單擊登陸按鈕,頁面中出現(xiàn)一個(gè)登陸浮窗,這個(gè)登陸浮窗是唯一的,無論單擊多少次登陸按鈕,這個(gè)浮窗都只會(huì)被創(chuàng)建一次,那么這個(gè)登陸浮窗就適合用單例模式來創(chuàng)建。 二、實(shí)現(xiàn)原理 要實(shí)現(xiàn)單

一、定義
保證一個(gè)類僅有一個(gè)實(shí)例,并提供一個(gè)訪問它的全局訪問點(diǎn)。
當(dāng)單擊登陸按鈕,頁面中出現(xiàn)一個(gè)登陸浮窗,這個(gè)登陸浮窗是唯一的,無論單擊多少次登陸按鈕,這個(gè)浮窗都只會(huì)被創(chuàng)建一次,那么這個(gè)登陸浮窗就適合用單例模式來創(chuàng)建。
二、實(shí)現(xiàn)原理
要實(shí)現(xiàn)單例并不復(fù)雜,使用一個(gè)變量來標(biāo)志當(dāng)前是否已經(jīng)為某個(gè)類創(chuàng)建過對象,如果是,則在下一次獲取該類的實(shí)例時(shí),直接返回之前創(chuàng)建的對象。
三、假單例
全局變量不是單例模式,但在JavaScript開發(fā)中,我們經(jīng)常會(huì)把全局變量當(dāng)成單例來使用。
降低全局變量帶來的命名污染
(1)使用命名空間
(2)使用閉包封裝私有變量
var user = (function() {
var _name = 'lee',
_age = '25';
return {
getUserInfo: function() {
return _name + ":" + _age;
}
};
})();
四、惰性單例:在需要的時(shí)候才能創(chuàng)建對象實(shí)例
五、補(bǔ)充:
(1)懶加載
(2)預(yù)加載
希望本文所述對大家學(xué)習(xí)javascript程序設(shè)計(jì)有所幫助。
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
學(xué)習(xí)JavaScript設(shè)計(jì)模式之單例模式_javascript技巧
學(xué)習(xí)JavaScript設(shè)計(jì)模式之單例模式_javascript技巧:一、定義 保證一個(gè)類僅有一個(gè)實(shí)例,并提供一個(gè)訪問它的全局訪問點(diǎn)。 當(dāng)單擊登陸按鈕,頁面中出現(xiàn)一個(gè)登陸浮窗,這個(gè)登陸浮窗是唯一的,無論單擊多少次登陸按鈕,這個(gè)浮窗都只會(huì)被創(chuàng)建一次,那么這個(gè)登陸浮窗就適合用單例模式來創(chuàng)建。 二、實(shí)現(xiàn)原理 要實(shí)現(xiàn)單