1、特點
享元(flyweight)模式是一種用於性能優化的模式,“fly”在這裏是蒼蠅的意思,意爲蠅量級。享元模式的核心是運用共享技術來有效支持大量細粒度的對象。
2、demo
50 種男式內衣和50 種女士內衣,爲了推銷產品,工廠決定生產一些塑料模特來穿上他們的內衣拍成廣告照片
// 50 種男式內衣和50 種女士內衣,爲了推銷產品,工廠決
// 定生產一些塑料模特來穿上他們的內衣拍成廣告照片
var Model = function(sex, underwear) {
this.sex = sex;
this.underwear = underwear;
}
Model.prototype.takePhoto = function() {
console.log('sex=' + this.sex + 'underwear' + this.underwear);
}
var maleModel = new Model('male'),
femaleModel = new Model('female');
for (var j = 1; j <= 50; j++) {
femaleModel.underwear = 'underwear' + j;
femaleModel.takePhoto();
};
var maleModel = new Model('male'),
femaleModel = new Model('female');
for (var i = 1; i <= 50; i++) {
maleModel.underwear = 'underwear' + i;
maleModel.takePhoto();
};
參考文獻:《JavaScript設計模式與開發實踐》