<?xml version="1.0"?>
<oembed><version>1.0</version><provider_name>life michael blog</provider_name><provider_url>https://lifemichael.com/en</provider_url><author_name>Haim Michael</author_name><author_url>https://lifemichael.com/en/author/lifemichaelblog/</author_url><title>The Decorator Design Pattern in JavaScript PRO - life michael blog</title><type>rich</type><width>600</width><height>338</height><html>&lt;blockquote class="wp-embedded-content" data-secret="2HKnnD8igS"&gt;&lt;a href="https://lifemichael.com/en/the-decorator-design-pattern-in-javascript-pro/"&gt;The Decorator Design Pattern in JavaScript &lt;font size=-2&gt;&lt;a href=http://www.lifemichael.com/en/?page_id=73 target=_blank&gt;PRO&lt;/a&gt;&lt;/font&gt;&lt;/a&gt;&lt;/blockquote&gt;&lt;iframe sandbox="allow-scripts" security="restricted" src="https://lifemichael.com/en/the-decorator-design-pattern-in-javascript-pro/embed/#?secret=2HKnnD8igS" width="600" height="338" title="&#x201C;The Decorator Design Pattern in JavaScript &lt;font size=-2&gt;&lt;a href=http://www.lifemichael.com/en/?page_id=73 target=_blank&gt;PRO&lt;/a&gt;&lt;/font&gt;&#x201D; &#x2014; life michael blog" data-secret="2HKnnD8igS" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" class="wp-embedded-content"&gt;&lt;/iframe&gt;&lt;script type="text/javascript"&gt;
/*! This file is auto-generated */
!function(c,l){"use strict";var e=!1,o=!1;if(l.querySelector)if(c.addEventListener)e=!0;if(c.wp=c.wp||{},c.wp.receiveEmbedMessage);else if(c.wp.receiveEmbedMessage=function(e){var t=e.data;if(!t);else if(!(t.secret||t.message||t.value));else if(/[^a-zA-Z0-9]/.test(t.secret));else{for(var r,s,a,i=l.querySelectorAll('iframe[data-secret="'+t.secret+'"]'),n=l.querySelectorAll('blockquote[data-secret="'+t.secret+'"]'),o=0;o&lt;n.length;o++)n[o].style.display="none";for(o=0;o&lt;i.length;o++)if(r=i[o],e.source!==r.contentWindow);else{if(r.removeAttribute("style"),"height"===t.message){if(1e3&lt;(s=parseInt(t.value,10)))s=1e3;else if(~~s&lt;200)s=200;r.height=s}if("link"===t.message)if(s=l.createElement("a"),a=l.createElement("a"),s.href=r.getAttribute("src"),a.href=t.value,a.host===s.host)if(l.activeElement===r)c.top.location.href=t.value}}},e)c.addEventListener("message",c.wp.receiveEmbedMessage,!1),l.addEventListener("DOMContentLoaded",t,!1),c.addEventListener("load",t,!1);function t(){if(o);else{o=!0;for(var e,t,r,s=-1!==navigator.appVersion.indexOf("MSIE 10"),a=!!navigator.userAgent.match(/Trident.*rv:11\./),i=l.querySelectorAll("iframe.wp-embedded-content"),n=0;n&lt;i.length;n++){if(!(r=(t=i[n]).getAttribute("data-secret")))r=Math.random().toString(36).substr(2,10),t.src+="#?secret="+r,t.setAttribute("data-secret",r);if(s||a)(e=t.cloneNode(!0)).removeAttribute("security"),t.parentNode.replaceChild(e,t);t.contentWindow.postMessage({message:"ready",secret:r},"*")}}}}(window,document);
&lt;/script&gt;
</html><description>The decorator design pattern was created in order to allow us adding new functionality to an already existing class without extending it. The decorator design pattern was created for those cases in which we cannot extend the class. The following code sample shows a simple demo for implementing the decorator design pattern in JavaScript. &lt;!DOCTYPE [&hellip;]</description></oembed>
