Тренажёр по промисам
Если вы, как и я, хотите лучше разбираться в промисах в JS, то я к вам с хорошими новостями. Нашёл репозиторий с тренажёром, который поможет отточить навыки. Тут куча упражнений, которые вам помогут. А встроенные тесты сразу покажут результат.
Лежит тут: https://github.com/henriqueinonhe/promises-training
#javascript #тренажер
Если вы, как и я, хотите лучше разбираться в промисах в JS, то я к вам с хорошими новостями. Нашёл репозиторий с тренажёром, который поможет отточить навыки. Тут куча упражнений, которые вам помогут. А встроенные тесты сразу покажут результат.
Лежит тут: https://github.com/henriqueinonhe/promises-training
#javascript #тренажер
🔥18👍1
Forwarded from Точка входа в программирование
От массивов до объектов в JavaScript: пособие для новичков
Базовая статья для новичков в JS. Как работают объекты, зачем нужны, в чём их прелесть и как они помогают организовавывать и обрабатывать данные? Всё по ссылке.
#javascript
Базовая статья для новичков в JS. Как работают объекты, зачем нужны, в чём их прелесть и как они помогают организовавывать и обрабатывать данные? Всё по ссылке.
#javascript
👍6🔥1
Какие базовые способы объявления функции в JS вы знаете?
Существуют четыре базовых способа:
1️⃣ Function Declaration
function sum(a, b) { return a + b } — поднимается (hoisting), имя видно во всей области видимости.
2️⃣ Function Expression
const sum = function (a, b) { … } — выражение, часто анонимное; удобно передавать как значение. Есть вариант с именем для лучших стектрейсов.
3️⃣ IIFE (немедленно вызываемое выражение)
(function () { /* изоляция */ })() — исторический способ создать локальную область.
4️⃣ Стрелочные функции
const inc = x => x + 1 — короткий синтаксис, лексический `this` и `arguments`, нет собственного prototype, нельзя вызывать через new. Отличный вариант для коллбеков и замыканий.
#вопросответ #javascript
function sum(a, b) { return a + b } — поднимается (hoisting), имя видно во всей области видимости.
const sum = function (a, b) { … } — выражение, часто анонимное; удобно передавать как значение. Есть вариант с именем для лучших стектрейсов.
(function () { /* изоляция */ })() — исторический способ создать локальную область.
const inc = x => x + 1 — короткий синтаксис, лексический `this` и `arguments`, нет собственного prototype, нельзя вызывать через new. Отличный вариант для коллбеков и замыканий.
#вопросответ #javascript
Please open Telegram to view this post
VIEW IN TELEGRAM
👎7👍6🔥2
Полный разбор THIS в JavaScript за 26 минут
Этот ролик — полный гайд по
🔘
🔘
🔘
🔘 особенности
🔘
И многое другое – с объяснением и примерами.
#видео #javascript
Этот ролик — полный гайд по
this в JS. Из него вы узнаете про:this в глобальной области видимости (объекты Window и Global);this в обычных функциях;this в функциях-конструкторах;this в стрелочных функциях;this в forEach и setTimeout.И многое другое – с объяснением и примерами.
#видео #javascript
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Полный разбор THIS в JavaScript за 26 минут | this в стрелочных функциях, call bind apply, Window
⭐ BOOSTY – задача с собеса по THIS, конспекты-шпаргалки и другие материалы:
https://boosty.to/pomazkovjs
⭐ Поддержать донатом: https://boosty.to/pomazkovjs/single-payment/donation/500599/
Этот ролик – полный гайд по this в JS.
Из него вы узнаете про:
– this…
https://boosty.to/pomazkovjs
⭐ Поддержать донатом: https://boosty.to/pomazkovjs/single-payment/donation/500599/
Этот ролик – полный гайд по this в JS.
Из него вы узнаете про:
– this…
👍6❤4
Что такое замыкания в JavaScript?
Замыкание в JavaScript — это функция, которая «помнит» свою внешнюю область видимости, даже если она выполняется вне неё.
Пример:
function makeCounter() {
let count = 0
return function() {
count++
return count
}
}
const counter = makeCounter()
console.log(counter()) // 1
console.log(counter()) // 2
Здесь внутренняя функция получает доступ к переменной count из makeCounter, хотя та уже завершила выполнение.
Зачем нужно:
— хранить состояние между вызовами без глобальных переменных;
— создавать приватные данные;
— передавать функции с «захваченным» контекстом.
#вопросответ #javascript
Пример:
function makeCounter() {
let count = 0
return function() {
count++
return count
}
}
const counter = makeCounter()
console.log(counter()) // 1
console.log(counter()) // 2
Здесь внутренняя функция получает доступ к переменной count из makeCounter, хотя та уже завершила выполнение.
Зачем нужно:
— хранить состояние между вызовами без глобальных переменных;
— создавать приватные данные;
— передавать функции с «захваченным» контекстом.
#вопросответ #javascript
🔥9👍7🤔4
«Хватит писать try/catch вокруг fetch: история о том, как я устал ловить ошибки»
Этот мем смешной, пока не осознаешь, что в реальных проектах мы именно так и поступаем. Только заворачиваем не весь код сразу, а каждый HTTP-запрос по отдельности.
Пишешь
Библиотека
#библиотека #javascript
Этот мем смешной, пока не осознаешь, что в реальных проектах мы именно так и поступаем. Только заворачиваем не весь код сразу, а каждый HTTP-запрос по отдельности.
Пишешь
fetch и рефлекторно добавляешь try/catch. Где-то словил TypeError, где-то таймаут, где-то сервер вернул 500. В итоге половина кода превращается в кашу проверок, а другая половина — в обработчики ошибок. Но проблема не в том, что мы ловим ошибки. Проблема в том, что fetch заставляет нас их ловить везде и всегда.Библиотека
safe-fetch решает эту проблема. Её задача проста: убрать try/catch из проектов навсегда. Как это работает и какие плюсы дает — в материале.#библиотека #javascript
🔥7
Делегирование событий в JavaScript: когда обычного всплытия недостаточно
По мере роста фронтенд-приложений управление пользовательскими взаимодействиями становится все более важным. Добавление обработчика событий на каждый интерактивный элемент — плохая практика: это усложняет код, увеличивает расход памяти и снижает производительность. Здесь на помощь приходит делегирование событий (event delegation).
Для разработчиков современных веб-приложений понимание делегирования событий — не просто полезный навык, а жизненно важная необходимость. Поэтому рекомендую прочитать эту статью.
#javascript
По мере роста фронтенд-приложений управление пользовательскими взаимодействиями становится все более важным. Добавление обработчика событий на каждый интерактивный элемент — плохая практика: это усложняет код, увеличивает расход памяти и снижает производительность. Здесь на помощь приходит делегирование событий (event delegation).
Для разработчиков современных веб-приложений понимание делегирования событий — не просто полезный навык, а жизненно важная необходимость. Поэтому рекомендую прочитать эту статью.
#javascript
👍4🤔3❤1
Forwarded from Точка входа в программирование
Деструктуризация в JavaScript
Деструктуризация — это удобный инструмент получения данныхв JS. Он позволяет «распаковывать» сразу много значений из массивов или объектов во множество переменных. Это, например, активно используется в React-хуках.
Простейший пример:
Здесь мы одной строкой задаем значения из массива сразу трём переменным —
Подробнее о возможностях и фишках деструктуризации можно прочитать в этой статье.
#javascript #основы
Деструктуризация — это удобный инструмент получения данныхв JS. Он позволяет «распаковывать» сразу много значений из массивов или объектов во множество переменных. Это, например, активно используется в React-хуках.
Простейший пример:
const timers = [10, 20, 30];
const [first, second, third] = timers;
Здесь мы одной строкой задаем значения из массива сразу трём переменным —
first, second, third.Подробнее о возможностях и фишках деструктуризации можно прочитать в этой статье.
#javascript #основы
❤4👍4👎1
Современный способ разработки серверов на JS
Ели вы когда-нибудь заходили на главную страницу Node, то наверняка видели этот кусок кода с картинки. Это самый простой веб-сервер, с которого сегодня начинается почти каждый сервер, написанный на JS. Да, это всё может быть прикрыто фреймворком, но по сути, все такие сервера делают примерно одно и то же.
Но сегодня существует более современный способ создания сервера, которому не нужно привязываться к сокету. О нём в этой статье.
#nodejs #javascript #бэкенд
Ели вы когда-нибудь заходили на главную страницу Node, то наверняка видели этот кусок кода с картинки. Это самый простой веб-сервер, с которого сегодня начинается почти каждый сервер, написанный на JS. Да, это всё может быть прикрыто фреймворком, но по сути, все такие сервера делают примерно одно и то же.
Но сегодня существует более современный способ создания сервера, которому не нужно привязываться к сокету. О нём в этой статье.
#nodejs #javascript #бэкенд
👍7🗿4❤1
Вам больше не нужен JavaScript
И не потому, что вы будете писать на другом языке. Просто сегодня CSS и HTML могут заменить значительную часть JS-кода. Здесь собраны интересные решения CSS, которые сегодня отлично работают и освобождают вас от необходимости подтягивать различные JS-файлы.
Подробнее.
#фронтенд #безопасность #javascript #css
И не потому, что вы будете писать на другом языке. Просто сегодня CSS и HTML могут заменить значительную часть JS-кода. Здесь собраны интересные решения CSS, которые сегодня отлично работают и освобождают вас от необходимости подтягивать различные JS-файлы.
Подробнее.
#фронтенд #безопасность #javascript #css
😁28👍6❤2💩1
Media is too big
VIEW IN TELEGRAM
Практика JavaScript: делаем целый сайт за 2 часа с нуля
Ловите полезный двухчасовой курс по созданию сайта с JavaScript, где вы:
— напишите с нуля приложение, которое сможете добавить в портфолио;
— научитесь настраивать рабочее окружение;
— поймёте зачем на самом деле нужны классы в JavaScript);
— разберётесь как принципы SOLID помогают писать расширяемый и поддерживаемый код;
— поработаете над оптимизацией приложения;
— задеплоите приложение на хостинг и сделаете многое другое.
Видео взято с YouTube, поэтому если предпочитаете смотреть там, то вот ссылка: youtu.be/0ViiJ8qTCFM
#видео #курс #javascript
Ловите полезный двухчасовой курс по созданию сайта с JavaScript, где вы:
— напишите с нуля приложение, которое сможете добавить в портфолио;
— научитесь настраивать рабочее окружение;
— поймёте зачем на самом деле нужны классы в JavaScript);
— разберётесь как принципы SOLID помогают писать расширяемый и поддерживаемый код;
— поработаете над оптимизацией приложения;
— задеплоите приложение на хостинг и сделаете многое другое.
Видео взято с YouTube, поэтому если предпочитаете смотреть там, то вот ссылка: youtu.be/0ViiJ8qTCFM
#видео #курс #javascript
🔥4❤1
Веб-страница
Вам больше не нужен JavaScript И не потому, что вы будете писать на другом языке. Просто сегодня CSS и HTML могут заменить значительную часть JS-кода. Здесь собраны интересные решения CSS, которые сегодня отлично работают и освобождают вас от необходимости…
JavaScript, отдохни! Делаем интерактивные вещи на HTML и CSS
Продолжаем делиться современными возможностями HTML и JS. Здесь собрали ещё пачку кейсов, где вы можете сократить количество JS-кода и облегчить свой сайт.
#javascript #html #css
Продолжаем делиться современными возможностями HTML и JS. Здесь собрали ещё пачку кейсов, где вы можете сократить количество JS-кода и облегчить свой сайт.
#javascript #html #css
❤6👍3
Кто есть кто: Обратные вызовы, промисы и асинхронные функции
В JavaScript есть темы, которые могут сложно поддаваться пониманию. В этой статье речь как раз пойдёт о таких.
Что это вообще такое? В каких случаях используются? Как работают? Каков их внутренний механизм? В этой статье вы раз и навсегда разберёте суть этих процессов.
#javascript
В JavaScript есть темы, которые могут сложно поддаваться пониманию. В этой статье речь как раз пойдёт о таких.
Что это вообще такое? В каких случаях используются? Как работают? Каков их внутренний механизм? В этой статье вы раз и навсегда разберёте суть этих процессов.
#javascript
🔥6❤3
JavaScript на блокчейне: как язык браузера стал сердцем Web3
Казалось бы, JavaScript и блокчейн — вещи из разных миров: один создавался для кнопок на веб-страницах, другой — для распределённых систем и шифрования. Но именно JavaScript оказался ключом, который открыл Web3 для миллионов разработчиков.
Здесь мы разбираемся, как язык фронтенда постепенно взял под контроль децентрализованный интернет — от кошельков до нод и смарт-контрактов.
#web3 #javascript
Казалось бы, JavaScript и блокчейн — вещи из разных миров: один создавался для кнопок на веб-страницах, другой — для распределённых систем и шифрования. Но именно JavaScript оказался ключом, который открыл Web3 для миллионов разработчиков.
Здесь мы разбираемся, как язык фронтенда постепенно взял под контроль децентрализованный интернет — от кошельков до нод и смарт-контрактов.
#web3 #javascript
🔥5😁1
Media is too big
VIEW IN TELEGRAM
Учимся работать с DOM в JS
Урок для начинающих, который поможет вам разобраться, как работать с элементами DOM-дерева в JavaScript. За полчаса вы пройдёте 26 упражнений, где вы научитесь:
— создавать и удалять элементы на нашей странице;
— динамически создавать HTML-разметку;
— добавлять классы к элементам;
— использовать обработчики событий на созданных элементах
и многому другому.
Смотреть можно здесь или на YouTube.
#видео #javascript #начинающим
Урок для начинающих, который поможет вам разобраться, как работать с элементами DOM-дерева в JavaScript. За полчаса вы пройдёте 26 упражнений, где вы научитесь:
— создавать и удалять элементы на нашей странице;
— динамически создавать HTML-разметку;
— добавлять классы к элементам;
— использовать обработчики событий на созданных элементах
и многому другому.
Смотреть можно здесь или на YouTube.
#видео #javascript #начинающим
🔥6
Как с помощью JavaScript убрать ботов, чтобы A/B-тесты были точнее
Боты сильно могут искажать реальные данные в любой сфере — будь то каналы в Telegram (знаю по себе) или статистика сайта. Поэтому важно иметь возможность исключить этих ботов из общей выборки.
Автор статьи, перевод которой мы подготовили, рассказал, как победить эту проблему и добиться релевантных результатов.
#javascript
Боты сильно могут искажать реальные данные в любой сфере — будь то каналы в Telegram (знаю по себе) или статистика сайта. Поэтому важно иметь возможность исключить этих ботов из общей выборки.
Автор статьи, перевод которой мы подготовили, рассказал, как победить эту проблему и добиться релевантных результатов.
#javascript
👍4❤2
This media is not supported in your browser
VIEW IN TELEGRAM
Только посмотрите, что творит эта библиотека
TypeGPU — это модульный и открытый набор инструментов для WebGPU с расширенным выводом типов и возможностью писать шейдеры на TypeScript. То есть вы можете использовать возможности GPU для вашего сайта, не погружаясь в нюансы низкоуровневого API.
Ключевая фишка — директива
Подробнее о библиотеке можно почитать здесь.
#javascript #typescript #библиотека
TypeGPU — это модульный и открытый набор инструментов для WebGPU с расширенным выводом типов и возможностью писать шейдеры на TypeScript. То есть вы можете использовать возможности GPU для вашего сайта, не погружаясь в нюансы низкоуровневого API.
Ключевая фишка — директива
'use gpu', которая компилирует JS в WSGL для запуска на графическом процессоре.Подробнее о библиотеке можно почитать здесь.
#javascript #typescript #библиотека
🔥22❤2💩2
Как лучше делать отладку код JavaScript в Chrome DevTools
Поиск и исправление ошибок в JS может быть весьма ресурсозатратным мероприятием. Новичкам этот процесс может показаться неподъёмным камнем.
Но только до знакомства с отладкой в инструментах разработчика, встроенных в браузер. О ней вы узнаете в этой статье. Причём не о привычной всем
#javascript #qa
Поиск и исправление ошибок в JS может быть весьма ресурсозатратным мероприятием. Новичкам этот процесс может показаться неподъёмным камнем.
Но только до знакомства с отладкой в инструментах разработчика, встроенных в браузер. О ней вы узнаете в этой статье. Причём не о привычной всем
console.log(), а куда более эффективных способах.#javascript #qa
❤3🤔3👍2
Для JavaScript появился ещё один движок
Создал его разработчик полностью в соло. Движок называется Brimstone и написан полностью на Rust.
Несмотря на небольшой вес, Brimstone очень быстрый и на 97% реализует спецификацию ECMAScript, что позволяет использовать его практически с любым кодом. Представляет собой виртуальную машину на основе байт-кода с современной сборкой мусора, собранную по образцу V8.
Такой движок отлично подойдёт для какого-нибудь WebView, где требуется легковесный движок. Подробнее можно прочитать на странице проекта. Там же лежит инструкция по установке.
#javascript
Создал его разработчик полностью в соло. Движок называется Brimstone и написан полностью на Rust.
Несмотря на небольшой вес, Brimstone очень быстрый и на 97% реализует спецификацию ECMAScript, что позволяет использовать его практически с любым кодом. Представляет собой виртуальную машину на основе байт-кода с современной сборкой мусора, собранную по образцу V8.
Такой движок отлично подойдёт для какого-нибудь WebView, где требуется легковесный движок. Подробнее можно прочитать на странице проекта. Там же лежит инструкция по установке.
#javascript
🤣4❤3🗿3
Веб-страница
Для JavaScript появился ещё один движок Создал его разработчик полностью в соло. Движок называется Brimstone и написан полностью на Rust. Несмотря на небольшой вес, Brimstone очень быстрый и на 97% реализует спецификацию ECMAScript, что позволяет использовать…
Кстати, пока искал информацию про Brimstone, обнаружил сайт с каталогом JavaScript-движков
Тут удобно собраны все движки с указанием языка, на котором они написаны, количества контрибьютеров, краткого описания и другой полезной информации.
Полезно, если есть необходимость выбирать движок для проекта.
Зоопарк движков можно изучить по ссылке: https://zoo.js.org/
#javascript
Тут удобно собраны все движки с указанием языка, на котором они написаны, количества контрибьютеров, краткого описания и другой полезной информации.
Полезно, если есть необходимость выбирать движок для проекта.
Зоопарк движков можно изучить по ссылке: https://zoo.js.org/
#javascript
❤6👍4