Дайджест свежих материалов из мира фронтенда от JSExpert ( 2 февраля — 16 февраля 2019 )
Небольшая подборка с ссылками на интересные материалы из области фронтенда и около него за последних 2 недели ( 2 февраля — 16 февраля 2019)
JavaScript
Работа с часовыми поясами в JavaScript
Работа с датой в JavaScript всегда была нелёгкой задачей, особенно для новичков. Работа с часовыми поясами является той ещё проблемой.
Автор этой статьи хочет поделиться своим опытом при решении проблемы добавления часовых поясов в JS-библиотеку календаря, которую ведёт его команда и предлагает подробно поговорить об определении и стандартах часовых поясов, а уже потом переходить к JavaScript решениям.
Node.js
12 странных вещей, которые могут произойти после установки npm пакета
Пару месяцев назад автор этого материала начал заниматься проектом под названием malicious-packages (ака «вредоносные пакеты»). Он следит за обновлениями в npm репозитории, скачивает все новые модули, а затем проверяет их на вшивость — ищет сетевую активность, подозрительные операции с файловой системой и т.д. Даже маленькие проекты на node.js часто имеют большое дерево зависимостей, и у разработчиков физически нет возможности проверить их все. Это даёт злоумышленникам огромный простор для манёвра, и возникает вопрос — сколько же всякой гадости прячется по тёмным углам npm registry? 180000 проверенных пакетов спустя автор получил примерный ответ.
Руководство для начинающих по серверной веб-разработке с Node.js
Анализ подходов к связыванию модулей в Node.js
Многие разработчики Node.js для связывания модулей используют исключительно создание жёсткой зависимости с помощью require(), однако существуют и другие подходы, со своими плюсами и минусами. О них в этой статье вы и узнаете. Автор рассматривает четыре подхода: жёсткие зависимости (require()), внедрение зависимостей (Dependency Injection), локаторы служб (Service Locator) и контейнеры внедряемых зависимостей (DI Container).
Когда использовать var, let и const в Javascript [перевод статьи Tyler’а McGinnis]
Представляем вашему вниманию перевод статьи «var vs let vs const in JavaScript» автора Tyler McGinnis.
В этой статье вы узнаете 2 новых способа для создания переменных в Javascript (ES6), let и const. На протяжении этой статьи мы рассмотрим разницу между var, let и const, а также смежные темы такие как: “область видимости функции против блочной области видимости“, “поднятие” переменных и иммутабельность.
Но прежде чем мы углубимся в различия между var, let и const, имеются некоторые темы, которые вам следует узнать в первую очередь. Это объявление переменных и их инициализация, область видимости (особая область видимости функции) и “поднятие”.
ES6
ECMAScript Proposal: Array.prototype.{flat,flatMap}
А вы уже слышали про такую интересную штуку, которая в скором времени появится уже появилась в стандарте ECMAScript?
Она уже доступна почти во всех браузерах и весь функционал тоже. Это нововведение всего лишь сахар-обертка и ее можно решить своими средствами и автор этого материала вам это покажет. Но этот сахар позволит вам писать кода меньше, ведь мы это так любим. Итак, добавляется базовые функции к массиву, в данном случае их 2, которые позволят нам разворачивать многоуровневые массивы в один или более уровней вложенности. Да-да, и все это как говориться из коробки☝️😀