Деструктуризация для опций функции на практическом примере

Достаточно частым приемом в JavaScript является передача в функцию массива опций, часть или все из которых являются не обязательными. ES6 позволяет упростить эту задачу. Давайте посмотрим на практическом примере.

Исходники кода

function createElem(tag, parent, {border = '1px solid blue', width = 100, height = 200}) { //let border = options.border || '1px solid blue'; //let width = options.width || 100; //let height = options.height || 200; //let {border = '1px solid blue', width = 100, height = 200} = options; let elem = document.createElement(tag); elem.style.border = border; elem.style.width = width + 'px'; elem.style.height = height + 'px'; parent.appendChild(elem); } createElem('div', document.body, { height: 400, //width: 300, border: '1px solid red' });