JS. Get query param

function getQueryParam(item) {
  var svalue = window.location.search.match(new RegExp('[\?\&]' + item + '=([^\&]*)(\&?)', 'i'));
  return svalue ? svalue[1] : svalue;
}

// /foo/bar/baz.html?lang=ru
var lang = getQueryParam('lang') || 'en';
  /**
   * Получить query параметр из url
   * @param url - адрес (`/foo/bar/baz.html?lang=ru`)
   * @param param - имя параметра
   */
  private getQueryParam(url: string = '', param: string): any { // :string
    const svalue = url.match(new RegExp('[\?\&]' + param + '=([^\&]*)(\&?)', 'i'));
    return svalue ? svalue[1] : svalue;
  }

Чуть более современный вариант URLSearchParams

Похожие записи

RxJS. Delay from array

import { of, from } from 'rxjs'; 
import { map, concatMap, delay } from 'rxjs/operators';

from([2,4,6,8]).pipe(
  concatMap(item => of(item).pipe(delay(1000)))
).subscribe(console.log);

Builder в JS

Builder (cтроитель) - порождающий шаблон программирования. Применяется для создания сложных объектов при помощи цепочки методов someBuilder->setValueA(1)->setValueB(2)->build()