Написание комментариев – это одно из важных умений. Считается хорошей
практикой, когда разработчик пишет комментарии к своему коду. Комментарии могут быть однострочными, начинающимися с //, и многострочными: /* Я комментарий! */. Обычно комментарии используются новичками, чтобы описать, как и почему работает код, но в хорошем коде должно быть как можно меньше «объясняющих» комментариев. Поэтому комментарий должен отвечать на вопрос, «зачем», а не «как». Тема 2: Дата и время Работа с временем одна из самых трудных задач. Множество таймзон, смещений и форматов. И везде должна быть синхронизация. Часто используемые функции: new Date() – создаст объект Date с текущими датой и временем new Date(datestring) – создаст объект Date с заданными датой и временем new Date(year, month, date, hours, minutes, seconds, ms) – тоже самое getFullYear() – вернёт год getMonth() – вернёт месяц от 0 до 11 getDate() – вернёт день месяца от 1 до 31 Date.now() – вернёт кол-во миллисекунд с 1 января 1970 года Dare.parse(str) – считывает дату из строки Тема 3: Операторы сравнения Многие операторы сравнения известны из математики. Больше/меньше: a > b, a < b Больше/меньше или равно: a >= b, a <= b Равно: a == b, a === b Не равно: a != b Тема 4: Логические операторы В JavaScript есть четыре логических оператора: || (ИЛИ), && (И), ! (НЕ) и ?? (Оператор нулевого слияния). a || b – если какой-либо из аргументов true, он вернёт true, в противоположной ситуации возвращается false, аргументов может больше чем 2 a && b – возвращает true, если все аргументы истинны, а иначе – false !a – возвращает противоположное значение, если true, то false и наоборот a ?? b – возвращает первый аргумент, если он не null/undefined, иначе второй Тема 5: Обработка ошибок Неважно, насколько хорошо можно писать код, иногда он даёт сбой, что приводит к критической ошибке с выводом в консоль. Такие ошибки можно поймать от неправильного ответа сервера, неожиданного ввода пользователем и прочее. Но есть синтаксическая конструкция try..catch..finally, которая позволяет «ловить» ошибки и вместо падения делать что-то более осмысленное. try { ... пробуем выполнить код... } catch(e) { ... обрабатываем ошибки ... } finally { ... выполняем всегда ... } Тема 6: Стрелочная функция Лямбда-выражением в JavaScript является стрелочная-функция. Пример: let func = (arg1, arg2, ...argN) => expression; Это создаёт функцию func, которая принимает аргументы arg1..argN, затем вычисляет expression в правой части с их использованием и возвращает результат. let sum = (a, b) => a + b; Эта стрелочная функция представляет собой более короткую форму. let sum = function(a, b) { return a + b; }; Тема 7: Функции высшего порядка Функции высшего порядка — это функции, которые работают с другими функциями, либо принимая их в виде параметров, либо возвращая их. Например, встроенные функции JavaScript map(), filter() и reduce() являются функциями высшего порядка. Пример функции map(): const birthYear = [1975, 1997, 2002, 1995, 1985]; const ages = birthYear.map(year => 2018 - year); // выводит [ 43, 21, 16, 23, 33 ] Тема 8: Системы счисления Из школьного курса информатики можно вспомнить, что существует несколько систем счисления. Основные это двоичная, восьмеричная, десятеричная и шестнадцатеричная. Для преобразования системы счисления из одной в другую существует функция parseInt(string, radix). Первым аргументом передаётся значение, вторым система счисления. Пример: parseInt(678, 16) равно 1656 в шестнадцатеричной системе счисления.
iota, for - each и transform all - of, any - of, none - of count, count - if, find, find - if sort, stable - sort, nth - element lower - bound, upper - bound, binary - search Резюме Источники