" />

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

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

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

介紹

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

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) {
		// 此處返回的是實(shí)例,工廠模式的特點(diǎn)
		return new Procuct(name)
	}
}
// 運(yùn)行代碼
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的實(shí)例)

在這里插入圖片描述

總結(jié)

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

相關(guān)文章

最新評(píng)論

湘潭市| 南汇区| 会宁县| 都昌县| 彰化市| 十堰市| 陕西省| 桐庐县| 商丘市| 常宁市| 留坝县| 历史| 尚志市| 云梦县| 盐源县| 札达县| 靖远县| 文山县| 禄劝| 九台市| 黎川县| 洛阳市| 长泰县| 浦城县| 新和县| 大足县| 宜春市| 辉县市| 金秀| 玛多县| 隆昌县| 上虞市| 紫阳县| 宜兴市| 郴州市| 克拉玛依市| 五大连池市| 班玛县| 原平市| 临沂市| 平邑县|