Параметри по подразбиране

Да приемем, че искаме да позволим при използване на модула да не се посочват всички настройки. Ако някоя от настройките не е указана, тя ще приеме стойност по подразбиране.

Например, в нашия случай можем да направим така, че типът по подразбиране да приема стойност p, а количеството - стойност 5:

javascript;(function({root, type = 'p', amount = 5}) {
  let parent = document.querySelector(root);
  
  for (let i = 1; i <= amount; i++) {
    let elem = document.createElement(type);
    parent.append(elem);
  }
})(config);

В този случай лесно можем да конфигурираме нашия модул по различни начини. Например, нека посочим само родителския елемент:

javascriptlet config = {
  root:  '#parent',
}

А сега нека посочим родителския елемент и количеството. При това няма да е необходимо да посочваме типа - защото елементите на обекта с настройки нямат ред и можем да ги пропускаме както желаем. И така, ето нашата настройка:

javascriptlet config = {
  root:  '#parent',
  amount: 10
}