Использование оператора опциональной последовательности (optional chaining operator)
Раньше, чтобы получить доступ ко вложенному свойству, нужно было проверять, существует ли каждое из свойств. Прямое обращение к
Но теперь, в версии ES11, код после оператора опциональной последовательности выполнится, только если обращение по предыдущей ссылке не привело к undefined или null.
Так что использование этого оператора сократит ваш код и сделает его более понятным.
#операторы
Раньше, чтобы получить доступ ко вложенному свойству, нужно было проверять, существует ли каждое из свойств. Прямое обращение к
user.location.street.name
могло выбросить исключение, что мы пытаемся обратиться к name через несуществующие ссылки к методам location или street.Но теперь, в версии ES11, код после оператора опциональной последовательности выполнится, только если обращение по предыдущей ссылке не привело к undefined или null.
Так что использование этого оператора сократит ваш код и сделает его более понятным.
#операторы
👍4
Забудьте о конкатенации, используйте шаблонные строки (литералы)
Конкатенация строк с помощью оператора "+" – это старая школа. Более того, конкатенация строк с участием большого количества переменных (или выражений) повышает риск возникновения путаницы и ошибок.
Шаблонные строки (или литералы) позволяют встраивать выражения прямо в текст. Они обладают уникальным синтаксисом, при котором строка заключается в обратные кавычки (``). Шаблонная строка может содержать места для подстановки динамических значений. Такие места отмечаются знаком доллара и фигурными скобками. Например, ${выражение}.
#полезно
Конкатенация строк с помощью оператора "+" – это старая школа. Более того, конкатенация строк с участием большого количества переменных (или выражений) повышает риск возникновения путаницы и ошибок.
Шаблонные строки (или литералы) позволяют встраивать выражения прямо в текст. Они обладают уникальным синтаксисом, при котором строка заключается в обратные кавычки (``). Шаблонная строка может содержать места для подстановки динамических значений. Такие места отмечаются знаком доллара и фигурными скобками. Например, ${выражение}.
#полезно
👍5
Как в Google Chrome измерить использование памяти веб-страницей
Благодаря этой статье ты узнаешь, как измерять утечки памяти страницы Google Chrome помощью performance.measureMemory. API performance.measureUserAgentSpecificMemory() позволяет разработчикам измерять использование памяти веб-страницами.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Благодаря этой статье ты узнаешь, как измерять утечки памяти страницы Google Chrome помощью performance.measureMemory. API performance.measureUserAgentSpecificMemory() позволяет разработчикам измерять использование памяти веб-страницами.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
👍3
Значение как число
Вы когда-нибудь обращали внимание, что "event.target.value" всегда возвращает строковое значение, даже если для поля ввода "input" задан тип "number"?
Чтобы сразу получать числовое значение, используйте
#полезно
Вы когда-нибудь обращали внимание, что "event.target.value" всегда возвращает строковое значение, даже если для поля ввода "input" задан тип "number"?
Чтобы сразу получать числовое значение, используйте
"event.target.valueAsNumber"
.#полезно
👍9🔥2
Полезные плагины и библиотеки
Делимся статьей, где автор рассказывает про полезные плагины и библиотеки для JavaScript. Всего их 25. Они помогут тебе при работе с анимацией, видео, диаграммами и прочим.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Делимся статьей, где автор рассказывает про полезные плагины и библиотеки для JavaScript. Всего их 25. Они помогут тебе при работе с анимацией, видео, диаграммами и прочим.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
👍4
flat
Это метод, который создает новый массив со всеми элементами вложенного массива, рекурсивно объединенными с вышестоящим массивом до заданной глубины.
#методы
Это метод, который создает новый массив со всеми элементами вложенного массива, рекурсивно объединенными с вышестоящим массивом до заданной глубины.
const array = [1, 2, [3, 4]];Это очень полезная фича, особенно если вы хотите выровнять вложенный массив с вышестоящим. Но если уровень вложенности вашего массива больше единицы, одноразовый вызов flat не сможет полностью выровнять массивы. Тогда для flat можно задать параметр глубины, который укажет на то, какой уровень вложенности вы хотите охватить, чтобы выровнять массивы.
array.flat(); // [1, 2, 3, 4];
const crazyArray = [1, 2, [3, 4], [[5], [6, [7,8]]]];Чем глубже вы погружаетесь в массив, тем больше вычислительного времени потребуется для его выравнивания. Обратите внимание, что IE и Edge не поддерживают эту функцию.
crazyArray.flat(Infinity); // [1, 2, 3, 4, 5, 6, 7, 8];
#методы
👍5
Рекурсивные функции
Внутри функции можно вызывать её саму — это пример рекурсивной функции.
Если разложить пример, то получится следующая цепочка:
- fac(3) это 3 * fac(2);
- fac(2) это 2 * fac(1);
- fac(1) это 1.
Получается, что
#функции
Внутри функции можно вызывать её саму — это пример рекурсивной функции.
Если разложить пример, то получится следующая цепочка:
- fac(3) это 3 * fac(2);
- fac(2) это 2 * fac(1);
- fac(1) это 1.
Получается, что
fac(3) это
3 * 2 * 1, то есть 6. Такой подход часто применяется в математических операциях, но не ограничивается ими.#функции
👍2
Фейковый API сервер
Делимся статьей, где автор рассказывает про создание гибридного фейкового API сервера с помощью json-server. Ты узнаешь, для чего он нужен и где используется. Также продемонстрированы достоинства и недостатки.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Делимся статьей, где автор рассказывает про создание гибридного фейкового API сервера с помощью json-server. Ты узнаешь, для чего он нужен и где используется. Также продемонстрированы достоинства и недостатки.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
❤4👍2
reduce()
Метод reduce() - это еще один встроенный метод JavaScript, который может быть использован для итерации через массив и выполнения какой-либо операции на каждом элементе. Он позволяет суммировать или сворачивать элементы массива в одно значение, используя функцию обратного вызова.
Например, мы можем использовать reduce() для суммирования всех чисел в массиве:
#методы
Метод reduce() - это еще один встроенный метод JavaScript, который может быть использован для итерации через массив и выполнения какой-либо операции на каждом элементе. Он позволяет суммировать или сворачивать элементы массива в одно значение, используя функцию обратного вызова.
Например, мы можем использовать reduce() для суммирования всех чисел в массиве:
const numbers = [1, 2, 3, 4, 5];Функция обратного вызова выполняется для каждого элемента массива, и результат сохраняется в аккумуляторе. В конце итерации reduce() возвращает окончательное значение аккумулятора
const sum = numbers.reduce((accumulator, currentValue) => {
return accumulator + currentValue;
}, 0);
console.log(sum); // Output: 15
#методы
👍5
Редко используемые API
Делимся статьей, где автор рассказывает про 4 API. Они редко используются, однако очень полезны. К ним относятся Beacon, Clipboard, Notifications и Perfomance. Присутствует ссылка на репозиторий с примерами.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Делимся статьей, где автор рассказывает про 4 API. Они редко используются, однако очень полезны. К ним относятся Beacon, Clipboard, Notifications и Perfomance. Присутствует ссылка на репозиторий с примерами.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
🔥1
Array.filter()
Метод
Вот пример использования метода
#методы
Метод
filter()
создает новый массив, в который включаются только те элементы исходного массива, которые удовлетворяют определенным условиям. Другими словами, этот метод позволяет фильтровать массив по определенным критериям.Вот пример использования метода
filter()
для отбора всех четных чисел из массива:let arr = [1, 2, 3, 4, 5, 6];В этом примере мы создали массив
let evenNumbers = arr.filter(num => num % 2 === 0);
console.log(evenNumbers); // [2, 4, 6]
arr
, содержащий числа от 1 до 6, и затем применили метод filter()
к этому массиву. В качестве аргумента методу передали функцию обратного вызова (также называемую функцией предиката), которая возвращает true
для всех четных чисел и false
для всех нечетных чисел. Как результат, метод filter()
создал новый массив evenNumbers
, содержащий только четные числа из исходного массива.#методы
👍4
File System Access API
File System Access API обеспечивает возможности чтения, записи и управления файлами. Этот API позволяет взаимодействовать с файлами на локальном устройстве пользователя или в доступной пользователю сетевой файловой системе. Делимся статьей, где подробно разобран основной функционал API.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
File System Access API обеспечивает возможности чтения, записи и управления файлами. Этот API позволяет взаимодействовать с файлами на локальном устройстве пользователя или в доступной пользователю сетевой файловой системе. Делимся статьей, где подробно разобран основной функционал API.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
👍2
Ключевое слово this
Ключевое слово "this" в JavaScript является одной из наиболее мощных и полезных функций языка. Оно позволяет ссылаться на текущий объект внутри метода объекта и обеспечивает удобный способ доступа к его свойствам и методам.
Например, если у вас есть объект "person" с методом "getName", который возвращает имя объекта, вы можете вызвать этот метод, используя ключевое слово "this".
Кроме того, "this" также может использоваться в функциях, которые вызываются как методы объекта. Например, если у вас есть объект "person" с методом "greet", который приветствует человека по имени, вы можете вызвать этот метод, используя ключевое слово "this" для ссылки на текущий объект.
#полезно
Ключевое слово "this" в JavaScript является одной из наиболее мощных и полезных функций языка. Оно позволяет ссылаться на текущий объект внутри метода объекта и обеспечивает удобный способ доступа к его свойствам и методам.
Например, если у вас есть объект "person" с методом "getName", который возвращает имя объекта, вы можете вызвать этот метод, используя ключевое слово "this".
Кроме того, "this" также может использоваться в функциях, которые вызываются как методы объекта. Например, если у вас есть объект "person" с методом "greet", который приветствует человека по имени, вы можете вызвать этот метод, используя ключевое слово "this" для ссылки на текущий объект.
#полезно
👍7
Temporal API
Temporal предоставляет отдельные классы ECMAScript для дат, времени и других вариантов использования с заданной областью. Это делает код более читабельным и предотвращает ошибки, вызванные неправильным принятием 0, UTC или местного часового пояса. Данная статья поможет разобраться с Temporal API.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Temporal предоставляет отдельные классы ECMAScript для дат, времени и других вариантов использования с заданной областью. Это делает код более читабельным и предотвращает ошибки, вызванные неправильным принятием 0, UTC или местного часового пояса. Данная статья поможет разобраться с Temporal API.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
❤3
Object.entries()
Метод возвращает массив, состоящий из массивов, каждый из которых содержит пары ключ-значение объекта, переданного в качестве аргумента. Этот метод полезен при работе с объектами, так как позволяет легко получать доступ к ключам и значениям объекта.
Как видно из примера, метод Object.entries() преобразует объект person в массив массивов, где каждый вложенный массив содержит ключ и значение объекта. Это может быть полезно, например, для итерации по объекту или для выполнения каких-либо операций с ключами и значениями.
#методы
Метод возвращает массив, состоящий из массивов, каждый из которых содержит пары ключ-значение объекта, переданного в качестве аргумента. Этот метод полезен при работе с объектами, так как позволяет легко получать доступ к ключам и значениям объекта.
Как видно из примера, метод Object.entries() преобразует объект person в массив массивов, где каждый вложенный массив содержит ключ и значение объекта. Это может быть полезно, например, для итерации по объекту или для выполнения каких-либо операций с ключами и значениями.
#методы
👍8
Анатомия ошибки
Первый шаг к пониманию ошибок JavaScript — понять, откуда они берутся. Большинство ошибок JavaScript автоматически генерируются движком JavaScript. Делимся статьей, где автор рассказывает про различные типы ошибок.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Первый шаг к пониманию ошибок JavaScript — понять, откуда они берутся. Большинство ошибок JavaScript автоматически генерируются движком JavaScript. Делимся статьей, где автор рассказывает про различные типы ошибок.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
.reduce()
Метод массива
#массивы
Метод массива
reduce()
позволяет превратить массив в любое другое значение с помощью переданной функции-колбэка и начального значения. Функция-колбэк будет вызвана для каждого элемента массива, и всегда должна возвращать результат.#массивы
👍4
Логические операторы
В данной статье автор подробно рассказывает про логические операторы «НЕ», «ИЛИ», «И» и нулевого слияния. Дополнительно рассматриваются побитовые операторы. Они используются для криптографии.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
В данной статье автор подробно рассказывает про логические операторы «НЕ», «ИЛИ», «И» и нулевого слияния. Дополнительно рассматриваются побитовые операторы. Они используются для криптографии.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
👍3
Нечеткое сравнение строк
Нечетко сравнение строк — это метод поиска строк, которые приблизительно (а не точно) соответствуют шаблону. Другими словами, нечеткое сопоставление строк — это тип поиска, при котором совпадения будут найдены, даже если пользователи ошибаются в написании слов или вводят только части слов для поиска. Делимся статьей, где рассмотрены самые популярные алгоритмы сравнения.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Нечетко сравнение строк — это метод поиска строк, которые приблизительно (а не точно) соответствуют шаблону. Другими словами, нечеткое сопоставление строк — это тип поиска, при котором совпадения будут найдены, даже если пользователи ошибаются в написании слов или вводят только части слов для поиска. Делимся статьей, где рассмотрены самые популярные алгоритмы сравнения.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
👍2
Array.from()
Функция
Эта функция может также принимать второй аргумент - функцию-маппер, которая позволяет изменить элементы в создаваемом массиве.
#массивы
Функция
Array.from()
позволяет создавать новый массив из итерируемого или массиво-подобного объекта. Это может быть полезно, когда вы хотите выполнить некоторые операции на коллекции элементов, например, на коллекции элементов DOM или на строке.Эта функция может также принимать второй аргумент - функцию-маппер, которая позволяет изменить элементы в создаваемом массиве.
#массивы
👍4