JavaScript   →  removeEventListener и bind правильное использование

Метод bind у функции возвращает новую функцию, поэтому нельзя делать вот так:

JavaScript   →  Добавляем ноль при формировании даты

Каждый сталкивался с задачей формирования даты в нужном формате из объекта Date

Помимо такой вещи как добавить +1 к результату функции getMonth, необходимо для читаемости добавить 0, если месяц состоит из одной цифры. то есть январь - 1 должен выглядеть как '01' (01.01.2022)

Typescript   →  Typescript проверка значения на соответствие типу(string literal type)

Когда хочется использовать литеральные типы(string literal types) вместо перечислений(enum), встает вопрос как проверить значение на соответствие типу в рантайме.

С версии Typescript 3.4 это сделать довольно просто.

1. Объявляем массив с типами:

Angular   →  Angular router FAQ

Как включить trace роутера?

Добавить опцию в рутовый модуль роутинга:

JavaScript   →  Set описание и хитрости

Set это объект позволяющий хранить уникальные значения разных типов, примитивных типов или ссылок на объекты.

Set можно итерировать в порядке добавления элементов.

Хитрости с Set:
- удаление повторяемых значений из массива

JavaScript   →  Проблема запуска eslint в монорепозитории

В монорепозитории с UI китом(stencil/typescript) столнулся с проблемой, что запуск eslint на весь репозиторий падает с ошибкой. Как запуск из консоли, так и запуск через husky.

Ошибка при запуске через husky:

./node_modules/.bin/eslint --fix was terminated with SIGABRT

Ошибка при запуске через консоль:

JavaScript   →  Интересный способ сброса setTimeout и setInterval

Если нам нужно отменить запуск setTimeout или setInterval, то обычно используем такую конструкцию:

LINUX   →  Как удалить все node_modules с компьютера

Чтобы освободить место на компьютере от node_modules достаточно выполнить команду, в директории с папкой с проектами(в корне, крайне не рекомендую запускать!):

find . -type d -name 'node_modules' -prune | xargs -I% rm -rf %

JavaScript   →  Escaping Regexp Expression

Перед тем как вставить искомую строку в match, на поиск совпадений, неплохо заэкранировать строку.

     //escape regexp expression
     function escapeRegExp(str) {

LINUX   →  Проверка свободного места на Linux

Есть две основные команды, для отображения свободного/занятого места на диске:

df - Свободное место на файловой системе
du - Используемое место

Показать свободное место на файловой системе: (флаг -h, говорит отображать данные в KB, MB, GB)

# df -h
Pages