Category : javascript

javascript
Слово this: управление контекстом выполнения в JavaScript

Привет, Хабр! Сегодня мы поговорим о this, потому что без четкого понимания, как работает this, ваш код может стать источником путаницы и ошибок.this в JS — это ключевое слово, которое ссылается на текущий контекст выполнения. Его значение зависит от того, где и как была вызвана функция, а не от того, где она была определена.В этой статье мы разберем все способы работы с контекстом выполнения, чтобы вы могли уверенно использовать this в любом сценарии.Разные контексты thisГлобальный контекст: п…

  • воскресенье, 29 сентября 2024 г. в 00:00:08
javascript
Object.freeze и Object.seal в JS

Привет, Хабр!Сегодня рассмотрим такие инструменты в JS, как Object.freeze и Object.seal. С помощью них можно установить надежный контроль над объектами, защитив их от нежелательных изменений. Как работают Object.freeze и Object.sealObject.freezeObject.freeze предотвращает любые изменения объекта. Это означает, что вы не сможете:Добавлять новые свойства.Удалять существующие свойства.Изменять значения уже существующих свойств.Посмотрим на пример:const user = { name: "Artem", age: …

  • суббота, 28 сентября 2024 г. в 00:00:09
javascript
Как мы делали просмотрщик BIM-моделей: взлеты, падения и уроки

Привет, Хабр! Если вы открыли эту статью, вероятно, вам интересна разработка BIM‑приложений, а конкретно — просмотрщиков 3D‑моделей (Viewer). Возможно, у вас уже есть свое BIM‑приложение, и вы столкнулись с трудностями, или вы только планируете начать разработку и собираете информацию. В любом случае, вы попали по адресу.Я расскажу вам историю о том, как мы создавали наш 3D Viewer, какие подводные камни встретились на пути, и какие уроки мы извлекли. Поехали!Выбор технологии: своя разработка vs…

  • суббота, 28 сентября 2024 г. в 00:00:07
javascript
UI- система или хроники Хаоса

Всем доброго времени суток. Давно я что-то ничего не писал, и вот созрел. Предлагаю сегодня поговорить о ui-системе. Зачем она нужна, когда она нужна, что дает, какие минусы имеет и вообще стоит ли ввязываться в это блуд.  Я часто слышу на разных конференциях, что панацея от всех болезней в бизнесе  —  это наличие дизайн-системы (ui-системы). Что, как только вы достигаете ее, то сроки сокращаются в 100500 раз. Что разработчики не хотят открутить голову дизайнерам, и, наоборот, что качество прод…

  • суббота, 28 сентября 2024 г. в 00:00:06
javascript
Компилируем и выполняем C на JavaScript

Мир работает на C. Этот язык лежит в основе сжатия файлов, сетевых взаимодействий и даже браузера, в котором вы читаете эту статью. Если код не написан на C, он всё равно взаимодействует с ABI, написанном на C (речь о C++, Rust, Zig, т.д.) и доступен в виде библиотеки на C. Язык C и C ABI — это прошлое, настоящее и будущее системного программирования. Вот почему мы разработали Bun v1.1.28, в которой предлагаем экспериментальную поддержку компиляции и выполнения нативного C из JavaScript hello…

  • суббота, 28 сентября 2024 г. в 00:00:05
javascript
Что нового в React 19

React 19 на подходе. Команда React анонсировала предрелизную версию React 19 в апреле. Это крупное обновление принесет с собой ряд улучшений и новых паттернов, нацеленных на повышение производительности, удобство использования и опыта разработки. Многие из этих возможностей были представлены в экспериментальном режиме в React 18, но в React 19 они станут стабильными. Давайте подготовимся к этому обновлению. ❯ Серверные компоненты Серверные компоненты — одно из крупнейших изменений в React с …

  • четверг, 26 сентября 2024 г. в 00:00:08
javascript
Основные принципы хорошего нейминга

ВведениеОднажды я поняла, что хочу написать статью о нейминге, предельно простую и базовую. В первую очередь, чтобы привести мысли в порядок для себя, но и другим, возможно, будет интересно ознакомиться с моими размышлениями.А чтобы это сделать, неоходимо возвести те понятия, которыми я собираюсь оперировать, в высокую степень абстракции. Поэтому было принято решение разделить эти понятия на две категории: переменные и функции.Переменные и функцииПеременные отвечают за хранение данных. Данные л…

  • четверг, 26 сентября 2024 г. в 00:00:07
javascript
10 продвинутых трюков JavaScript, которые повысят ваши навыки программирования

JavaScript — это сердце веб-разработки, делая сайты живыми и интерактивными. Но чтобы стать настоящим гуру JavaScript, мало знать только базовый синтаксис; нужно заглянуть глубже и освоить более продвинутые концепции. В этой статье я расскажу о 10 хитростях JavaScript, которые помогут вам писать код более эффективно и изящно.1. Деструктуризация объектов и массивовДеструктуризация позволяет извлекать данные из массивов или объектов и присваивать их переменным. const user = { name: "Alice&#…

  • четверг, 26 сентября 2024 г. в 00:00:05
javascript
Пишем свой плагин для Webpack

ВведениеСегодня в мире разработки веб-приложений нам очень часто приходится прибегать к помощи сборщиков. И хоть на текущий момент существует большой выбор инструментов сборки приложений, значительная доля написанных проектов использует Webpack в качестве сборщика. И бывает, что стандартный функционал Webpack не покрывает наши потребности, а плагинов, которые это могут сделать, нет в открытом доступе. Тогда мы приходим к выводу, что нужно писать свой плагин. Эта статья посвящена необходимой баз…

  • четверг, 26 сентября 2024 г. в 00:00:04