" />

最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javascript設(shè)計模式之工廠模式

 更新時間:2022年01月11日 15:11:58   作者:妖怪不慌不張  
這篇文章主要為大家介紹了javascript工廠模式,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助

介紹

  • 將new操作單獨封裝
  • 遇到new時,就要考慮是否應(yīng)該使用工廠模式
  • 比如買漢堡:直接點餐、取餐,我們不會親手做,商店要“封裝”做漢堡的工作,做好直接給買者

UML類圖

在這里插入圖片描述

直接上工廠模式的代碼

class Product {
	constructor(name} {
		this.name = name
	}
	init() {console.log('init')}
	fun1() {console.log('fun1')}
	fun2() {console.log('fun2')}
}
// 此處的Creator就是工廠
class Creator {
	create(name) {
		// 此處返回的是實例,工廠模式的特點
		return new Procuct(name)
	}
}
// 運行代碼
let creator = new Creator()
let p = creator.create('p1')
p.init()
p.fun1()
p.fun2()

工廠模式的場景

Jquery - $(‘div’)

// jquery 代碼為工廠模式
class jQuery {
    constructor(selector) {
        let slice = Array.prototype.slice
        let dom = slice.call(document.querySelectorAll(selector))
        let len = dom ? dom.length : 0
        for (let i = 0; i < len; i++) {
            this[i] = dom[i]
        }
        this.length = len
        this.selector = selector || ''
    }
    append(node) {}
    addClass(name) {}
    html(data) {}
    // 此處省略若干 API
}
window.$ = function (selector) {
    return new jQuery(selector)
}

React.createElement (創(chuàng)建虛擬dom的實例)

在這里插入圖片描述

總結(jié)

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • JavaScript代碼復用模式詳解

    JavaScript代碼復用模式詳解

    文章介紹了代碼復用的概念及其原則,已經(jīng)代碼復用的集中類型,非常的詳盡,語言簡單易懂,有需要的朋友可以參考下
    2014-11-11
  • JavaScript中的Math 使用介紹

    JavaScript中的Math 使用介紹

    這篇文章主要介紹了JavaScript中Math的使用,需要的朋友可以參考下
    2014-04-04
  • javascript中的=等號個數(shù)問題兩個跟三個有什么區(qū)別

    javascript中的=等號個數(shù)問題兩個跟三個有什么區(qū)別

    一個等號就是個賦值的作用,主要問題在于兩個跟三個等號的區(qū)別,想必有很多的朋友都不知道吧,在本文有個不錯的示例主要介紹下兩者到底有什么區(qū)別,感興趣的朋友不要錯過
    2013-10-10
  • JavaScript面對國際化編程時的一些建議

    JavaScript面對國際化編程時的一些建議

    這篇文章主要介紹了JavaScript面對國際化編程時的一些建議,包括時區(qū)與語言編碼等一些值得注意的問題,需要的朋友可以參考下
    2015-06-06
  • JavaScript學習筆記之定時器

    JavaScript學習筆記之定時器

    本文通過2個定時器的示例向我們展示了javascript中定時器的使用方法,格式以及功能,希望通過本文能夠讓大家對javascript定時器有新的認識。
    2015-01-01
  • Javascript中的變量使用說明

    Javascript中的變量使用說明

    使用過javascript的朋友都知道,在javascript中,變量的使用是個比較頭疼的問題,經(jīng)常會產(chǎn)生 些比較匪夷所思的結(jié)果。究其原因,大多是對javascript的變量相關(guān)知識了解得不夠透徹。
    2010-05-05
  • javascript中怎么做對象的類型判斷

    javascript中怎么做對象的類型判斷

    javascript中經(jīng)常使用的對象判斷方式包括:typeof、constructor和Object.prototype.toString.call()
    2013-11-11
  • 在javascript中創(chuàng)建對象的各種模式解析

    在javascript中創(chuàng)建對象的各種模式解析

    下面小編就為大家?guī)硪黄趈avascript中創(chuàng)建對象的各種模式解析。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考,一起跟隨小編過來看看吧
    2016-05-05
  • 自動化測試讀寫64位操作系統(tǒng)的注冊表

    自動化測試讀寫64位操作系統(tǒng)的注冊表

    本文主要介紹自動化測試讀寫64位操作系統(tǒng)的注冊表,這里提供詳細的教程來實現(xiàn)自動化讀寫64位操作系統(tǒng)的注冊表,希望能幫助測試軟件的朋友,有興趣的小伙伴可以參考下
    2016-08-08
  • 淺談JavaScript Date日期和時間對象

    淺談JavaScript Date日期和時間對象

    這篇文章主要介紹了JavaScript Date日期和時間對象的相關(guān)資料,需要的朋友可以參考下
    2014-12-12

最新評論

富民县| 烟台市| 沙洋县| 枝江市| 县级市| 礼泉县| 郴州市| 淳化县| 富宁县| 剑阁县| 申扎县| 共和县| 康平县| 台中县| 方正县| 西充县| 漠河县| 长汀县| 颍上县| 于田县| 永宁县| 库尔勒市| 北票市| 调兵山市| 水富县| 广丰县| 金堂县| 嘉定区| 平南县| 湖南省| 蒙阴县| 通渭县| 承德县| 甘德县| 曲阳县| 连城县| 巍山| 阳西县| 双江| 建水县| 库伦旗|