通过实际示例了解“装饰器模式”

我正在研究GOF中记录的Decorator模式。


请帮助我了解装饰器模式。有人可以举一个在现实世界中有用的用例示例吗?


胡子哥哥
浏览 596回答 4
4回答

皈依舞

这是一个简单的示例,将新行为动态添加到现有对象或Decorator模式中。由于动态语言(例如Javascript)的性质,这种模式成为语言本身的一部分。// Person object that we will be decorating with logging capabilityvar person = {  name: "Foo",  city: "Bar"};// Function that serves as a decorator and dynamically adds the log method to a given objectfunction MakeLoggable(object) {  object.log = function(property) {    console.log(this[property]);  }}// Person is given the dynamic responsibility hereMakeLoggable(person);// Using the newly added functionalityperson.log('name');
打开App,查看更多内容
随时随地看视频慕课网APP