CORS
Совместное использование ресурсов различными источниками (CORS) — это механизм безопасности на основе HTTP, который контролируется и применяется клиентом (веб-браузером). Это позволяет службе (API) указывать любой источник, кроме своего собственного, из которого клиент может запрашивать ресурсы. Делимся статьей, где автор знакомит с CORS.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Совместное использование ресурсов различными источниками (CORS) — это механизм безопасности на основе HTTP, который контролируется и применяется клиентом (веб-браузером). Это позволяет службе (API) указывать любой источник, кроме своего собственного, из которого клиент может запрашивать ресурсы. Делимся статьей, где автор знакомит с CORS.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
👍7
Три способа проверить, является ли объект массивом
В JS массив также является объектом, так что для такой проверки вы можете использовать три способа (это часто задают на собеседованиях):
В JS массив также является объектом, так что для такой проверки вы можете использовать три способа (это часто задают на собеседованиях):
const arr = [1, 2, 3, 4];•
arr.constructor.toString().indexOf("Array") > -1
• arr instanceof Array
• Array.isArray(arr)
#полезно👍17
RegEx на практике
Регулярное выражение — это последовательность символов, формирующая шаблон поиска. Шаблон поиска можно использовать для текстового поиска и операций замены текста. В данной статье продемонстрирована работа regex с валидацией.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Регулярное выражение — это последовательность символов, формирующая шаблон поиска. Шаблон поиска можно использовать для текстового поиска и операций замены текста. В данной статье продемонстрирована работа regex с валидацией.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
👍3❤1
Получить временную метку (timestamp)
Текущее значение метки времени бывает полезно для генерации случайных значений, ведь с каждой секундой оно меняется.
Текущее значение метки времени бывает полезно для генерации случайных значений, ведь с каждой секундой оно меняется.
const date = new Date();
console.log(date.getTime()); // 1621708197268
#функции👍4
Создание пианино
В данной статьей автор демонстрирует создание пианино с помощью JavaScript. Обрати внимание, проект лучше всего работает в Chrome и других браузерах с тем же движком. Могут быть проблемы при работе с Safari.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
В данной статьей автор демонстрирует создание пианино с помощью JavaScript. Обрати внимание, проект лучше всего работает в Chrome и других браузерах с тем же движком. Могут быть проблемы при работе с Safari.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Деструктуризация объектов
const user = {
name: 'David',
age: 30
};
// деструктуризовать пропсы и использовать status со значением Married, если этого свойства нет
const {name, age, status = 'Married' } = user;
console.log(name, age, status) // David 30 Married
const person = {
age: 30
};
// деструктуризуем объект person, переименуем name в username, назначим по умолчанию значение Anonymous, если такого свойства в person нет
const {name: username = 'Anonymous', age } = person;
console.log(username, age); // Anonymous 30
#полезно👍6
Ошибки с промисами
В данной статье продемонстрированы самые распространенные ошибки при работе с промисами. К ним относятся: использование блока try/catch внутри промиса; неправильное использование Promise.race(); злоупотребление промисами.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
В данной статье продемонстрированы самые распространенные ошибки при работе с промисами. К ним относятся: использование блока try/catch внутри промиса; неправильное использование Promise.race(); злоупотребление промисами.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
👍4
Деструктуризация массивов
const days = ["sunday", "monday", "tuesday", "wednesday", "thursday", "friday", "saturday"];
const [firstDay, secondDay] = days;
console.log(firstDay); // sunday
console.log(secondDay); // monday
#массивы👍3🔥1
Docker
Docker — это открытая платформа для разработки и запуска приложений. Docker позволяет отделить твои приложения от инфраструктуры, чтобы ты мог быстро развертывать программное обеспечение. Данная статья познакомит тебя с Docker.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Docker — это открытая платформа для разработки и запуска приложений. Docker позволяет отделить твои приложения от инфраструктуры, чтобы ты мог быстро развертывать программное обеспечение. Данная статья познакомит тебя с Docker.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
👍5❤3
Использование шаблонных литералов
const user = {
name: 'David',
age: 30,
address: 'NY'
};
const { name, age, address } = user;
console.log(Hi, I'm ${name} with age ${age} and living in ${address});
#полезно👍8❤2🔥2
Создание кроссбраузерного расширения
Делимся статьей, где автор рассказывает про создание кроссбраузерного расширения. Ты узнаешь про различные проблемы кроссбраузерности; из чего состоит расширение. Также ты познакомишься с фреймворком Plasmo.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Делимся статьей, где автор рассказывает про создание кроссбраузерного расширения. Ты узнаешь про различные проблемы кроссбраузерности; из чего состоит расширение. Также ты познакомишься с фреймворком Plasmo.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
❤4
Передача числовых переменных в качестве аргументов в функцию
Оператор rest (версия ES6) конвертирует разделённые запятой значения в массив, таким образом параметр numbers в функции add становится массивом.
Оператор rest (версия ES6) конвертирует разделённые запятой значения в массив, таким образом параметр numbers в функции add становится массивом.
function add(...numbers) {
return numbers.reduce((acc, value) => {
return acc + value;
}, 0);
}
const sum = add(1, 2, 3, 4, 5);
console.log(sum); // 15
#функции👍7❤2
XSS с мутациями
Мутационные XSS-уязвимости вызваны различиями в том, как браузеры интерпретируют стандарт HTML. Сервер должен учитывать все различия не только между браузерами, но и их версиями. В данной статье автор демонстрирует свежие примеры, которые позволили обойти защиту популярных HTML-санитайзеров.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Мутационные XSS-уязвимости вызваны различиями в том, как браузеры интерпретируют стандарт HTML. Сервер должен учитывать все различия не только между браузерами, но и их версиями. В данной статье автор демонстрирует свежие примеры, которые позволили обойти защиту популярных HTML-санитайзеров.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Создать новый массив с помощью spread-оператора (троеточие)
const first = ["two", "three", "four"];
const second = [ "six", "seven", "eight"];
const combined = ["one", ...first, "five", ...second]
console.log(combined); // ["one", "two", "three", "four", "five", "six", "seven", "eight"]
#полезно👍13
Supabase
Supabase — это альтернатива Firebase с открытым исходным кодом, предоставляющая все базовые функции, необходимые для создания продукта. Делимся статьей, где автор знакомит с Supabase.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Supabase — это альтернатива Firebase с открытым исходным кодом, предоставляющая все базовые функции, необходимые для создания продукта. Делимся статьей, где автор знакомит с Supabase.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
👍4
Заполнить массив определённым значением
const array = Array(5).fill(false); // [false, false, false, false, false]
const array = [...Array(5).keys()] // [0, 1, 2, 3, 4, 5]
#массивы👍9
Видео в вебе
Политика автовоспроизведения Chrome блокирует автовоспроизведение мультимедиа со звуком. Это означает, что с включенной этой политикой видео всегда будут автоматически воспроизводиться без звука в Google Chrome. На текущий момент эта политика поддерживается многими бразуерами. Делимся статьей, где автор рассказывает про эту политику.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Политика автовоспроизведения Chrome блокирует автовоспроизведение мультимедиа со звуком. Это означает, что с включенной этой политикой видео всегда будут автоматически воспроизводиться без звука в Google Chrome. На текущий момент эта политика поддерживается многими бразуерами. Делимся статьей, где автор рассказывает про эту политику.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
👍1
Удалить из массива повторяющиеся элементы
С помощью Set:
С помощью Set:
const array = [1, 2, 2, 3, 1, 5];С помощью метода массива filter:
const unique = [...new Set(array)];
console.log(unique); // [1, 2, 3, 5];
const array = [1, 2, 2, 3, 1, 5];
const unique = array.filter((value, index) => {
return array.indexOf(value) === index;
});
console.log(unique); // [1, 2, 3, 5]
#массивы #методы❤2
Манкипатчинг
Манкипатчинг — это метод добавления, изменения или подавления поведения фрагмента кода по умолчанию во время выполнения без изменения исходного кода. В данной статье автор демонстрирует различные проверки, есть ли у нативной JavaScript‑функции манкипатч.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Манкипатчинг — это метод добавления, изменения или подавления поведения фрагмента кода по умолчанию во время выполнения без изменения исходного кода. В данной статье автор демонстрирует различные проверки, есть ли у нативной JavaScript‑функции манкипатч.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
👍2🔥1
Сгенерировать случайное число в определённом диапазоне
Случайное число от 0 до 100:
Случайное число от 0 до 100:
Math.floor(Math.random() * 100)Случайное число от 1 до 100:
Math.floor(Math.random() * 100) + 1Случайное число между минимальным (включительно) и максимальным значением (не включая):
function getRandom(min, max) {Случайное число между и максимальным значением (включая оба значения):
return Math.floor(Math.random() * (max - min) ) + min;
}
console.log(getRandom(10, 35)); // случайное число в диапазоне >= 10 и < 35
function getRandom(min, max) {
return Math.floor(Math.random() * (max - min + 1) ) + min;
}
console.log(getRandom(10, 35)); // случайное число в диапазоне >= 10 и <= 35
#полезно🔥6👍3