Skip to Content
JavaScript 設計模式
book

JavaScript 設計模式

by Stoyan Stefanov
March 2012
Intermediate to advanced
244 pages
4h 42m
Chinese
GoTop Information, Inc.
Content preview from JavaScript 設計模式
150
   
第七章
另一種解決方案,則是用立即函式包住建構式和實體。第一次呼叫建構式時會建立一個物
件,且一樣指派給 private
instance
。從第二次的呼叫以後,建構式只是回傳 private
數。對於這份實作,上面的那些測試也都能如預期運作:
工廠模式(Factory
Factory 的目的是建立物件,它通常實作為一個 class,或者 class 的一個靜態方法。Factory
具有下列目的:

對於建立相似的物件進行重複性的運作

提供 factory 的客戶一個建立物件的方式,且無須在編譯時期知道明確的型別
class
確實是相同的實體
所有的原型屬性都有效
不論它們是什麼時候定義的
一般屬性可運作
建構式指標也正確
建立所有的功能
設計模式
   
151
第二點在以靜態 class 為基礎的語言中更為重要,因為在這類語言中,要能不事先(在編
譯時期)知道型別來建立 class 實體是很不尋常(non-trivial)的事情。而在 JavaScript
關於這部分的實作則相當容易。
factory 的方法或 class 所建立的物件,會被設計成繼承同一個父物件;這些具體的
subclasses 物件則各自實作專門的功能。有時候這個公共的父親也同時是容納 fa ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

JavaScript 之美

JavaScript 之美

Anton Kovalyov
重構 JavaScript

重構 JavaScript

Evan Burchard

Publisher Resources

ISBN: 9789862764190