Открыть меню    
Как продвинуть сайт на первые места?
Вы создали или только планируете создать свой сайт, но не знаете, как продвигать? Продвижение сайта – это не просто процесс, а целый комплекс мероприятий, направленных на увеличение его посещаемости и повышение его позиций в поисковых системах.

Ускорение продвижения
Если вам трудно попасть на первые места в поиске самостоятельно, попробуйте технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Если ни один запрос у вас не продвинется в Топ10 за месяц, то в SeoHammer за бустер вернут деньги.

Деструктурированные параметры и аргументы функции

Более подробно о деструктуризации можно узанать на dnzl.ru: Деструктуризация в JavaScript (ES6)

ES5

Раньше

function fu(options) {

    options = options || {};

  let name = options.name,
      family = options.family,
      years = options.years,
      live = options.live || 'live';
      console.log(`${family} ${name}, ${years}, live: ${live}` );
};

fu({
  name: 'Petya',
  family: 'Putina',
  years: 299,
  //live: 'no'
});
// Putina Petya, 299, live: live

Минусы: мы не можем сказать, какие параметры ожидает функция - нам придется изучить ее тело.

Пример использования деструктурированных параметров

Деструктурированные параметры ясно показывают, какие параметры переданы в функцию.

function fu2({name, family, years, live}) {
// как работает:
/* 
let {name, family, years, live} = {
                name: 'Petya',
                family: 'Putina',
                years: 299,
                live: 'no'
} 
*/
console.log(`${family} ${name}, ${years}, live: ${live}` );
};

fu2({
  name: 'Petya',
  family: 'Putina',
  years: 299,
  live: 'no'
});
// Putina Petya, 299, live: no

В случае отсутствия деструктурированного параметра внутри функции eго значение равно undefined.

Необязательный деструктурированный параметр

Деструктурированные параметры являются обязательными. Но это легко обойти:

function fu2({name, family, years, live} = {}) {
      console.log(`${family} ${name}, ${years}, live: ${live}` );
};

fu2(); // ошибки не будет  // undefined undefined, undefined, live: undefined

Параметры по умолчанию

// параметры по умолчанию:
function fu3({name = 'noname',
              family = 'nofamily',
              years = 'noyears',
              live = 'nolive'} = {}) {

      console.log(`${family} ${name}, ${years}, live: ${live}` );

};
fu3();
// nofamily noname, noyears, live: nolive
test
test
112

Комментарии к статье