Обновить
214.93

JavaScript *

Прототипно-ориентированный язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

Как подружить GLPI с Node Js Часть 1. (Выбор основного подхода)

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров1.9K

Как легко и просто можно использовать node js и его возможности, чтоб дружить с другими системами (например GLPI) через их БД. Эта статья - мой опыт такого взаимодействия, который я получил в контексте решения рабочего кейса.

К прочтению

Next.js + Playwright. Как мы начали писать автотесты и что из этого вышло

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров7K

Привет! Меня зовут Данила, я фронтенд-тимлид в KTS.

В этой статье я поделюсь с вами нашим опытом внедрения автотестов на одном из боевых проектов. Расскажу, с какими задачами мы столкнулись, почему решили взяться за автотестирование и какие результаты это принесло.

Читать далее

Необычные приёмы отладки, которые браузер от вас скрывает

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров20K

Список неочевидных, но при этом полезных хаков, которые позволят использовать отладчик вашего браузера1 более полноценно. Для понимания материала статьи потребуется как минимум средний уровень владения инструментами разработчика.
Читать дальше →

Снова any. Заметка для новичка

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров5.9K

Снова any. Заметка для новичка

Небольшая заметка для новичков об any.

Заметка, по сути, синтез из официальной информации, общих выражений об any, и нескольких примеров использования как положительных, так и негативных.

Хотите знать больше?

Полгода программировал To-Do List и получил 0 пользователей

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров37K

Полгода я тратил свободное от учёбы и работы время на свой проект, который не принес мне ничего, кроме опыта.

В этой статье я расскажу о своём пути в IT, идее стартапа, процессе разработки и совершённых ошибках.

Читать далее

Что нам даёт понимание спецификации языка ECMA Script? Разбираем стандарт ECMA262

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров3.4K

Привет, Хабр! Меня зовут Александр, я frontend-разработчик SimbirSoft. Я 7 лет занимаюсь разработкой, и могу утверждать, что в процессе получения опыта работа специалиста становится все более творческой. Мы не просто стремимся заставить ПО работать нужным заказчику образом, а стараемся сделать все его части элегантными, производительными и легко поддерживаемыми. 

Язык программирования, являясь нашим главным инструментом, не статичен и постоянно развивается. Какие-то его части устаревают и отмирают, появляются новые фичи языка, отвечающие духу последних методологий по разработке ПО.

Я расскажу о сообществе, которое занято развитием нашего языка JavaScript. В первую очередь это организация ECMA International, которая разрабатывает стандарт языка ECMA Script, диалектом которого является JavaScript.

Мы разберем основные движки, реализующие стандарт ECMA Script, его ключевые разделы, опишем содержание на примере фичи. Рассмотрим, для чего изучать стандарт и как его дополнить, внеся свой вклад в сообщество разработчиков.

Читать далее

JavaScript: структуры данных и алгоритмы. Часть 5

Уровень сложностиСредний
Время на прочтение26 мин
Количество просмотров5.6K


Привет, друзья!


В этой серии статей мы разбираем структуры данных и алгоритмы, представленные в этом замечательном репозитории. Это пятая часть серии.



Сегодня мы рассмотрим систему непересекающихся множеств, фильтр Блума и кэш актуальных данных.


Код, представленный в этой и других статьях серии, можно найти в этом репозитории.


Интересно? Тогда прошу под кат.

Читать дальше →

Реализация событий через HTTP

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров2.7K

Для некоторых задач, связанных с обновлением данных в реальном времени — например, новостные ленты, уведомления или поток чата, можно обойтись без сложных двусторонних протоколов, как WebSocket. Мы можем использовать простой механизм передачи данных от сервера к клиенту через HTTP, который часто оказывается удобнее и эффективнее в настройке для однонаправленного обмена данными.

Читать далее

JavaScript Clean Code: руководство для начинающих разработчиков

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров4.6K

Это руководство посвящено написанию чистого и удобного кода на JavaScript и TypeScript. Мы рассмотрим лучшие практики работы с функциями, переменными и методами, чтобы ваш код был не только эффективным, но и понятным как вам, так и другим разработчикам. Статья будет полезна для новичков, которые хотят улучшить свои навыки кодирования.

Читать далее

Как быстро получить примерную стоимость оборудования на основе спецификации проекта

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров1.8K

Иногда наша компания участвует в тендерах и чтобы это было выгодно компания должна оценить свои затраты на строительство и оснащение объекта ещё до подачи ценовой заявки на участие в конкурсе. Для оценки затрат обычно берётся спецификация оборудования к рабочей документации и составляются таблицы с ценами на товары и услуги.

При этой оценке очень часто присутствует большой объем механического поиска цен товаров и услуг в интернете на сайтах поставщиков.

В какой-то момент мне захотелось упростить процесс и на Google Apps Script для Гугл Таблиц написал небольшой скрипт для Google Custom Search Engine (CSE) который автоматически обходит все искомые позиции по списку и составляет список актуальных цен и ссылок на их источники. Хотя без последующей ручной проверки на адекватность использовать такой механизм нельзя, но сам скрипт очень сильно упрощает, облегчает и ускоряет работу.

Ищем цены и оцениваем 🤖

WebP — формат сжатия веб-страниц

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров14K

Я хочу, чтобы посетители моего сайта наслаждались им, так что я забочусь об accessibility и проверяю, что даже без JavaScript тут есть, на что смотреть. Я забочусь о том, насколько быстро грузятся страницы, ведь на некоторых из них есть большие иллюстрации, поэтому я минифицирую HTML.

Вот только есть один нюанс, который ставит мне палки в колёса и не даёт сделать блог лёгким как пёрышко.

Читать далее

Зачем нужны ключи в JavaScript фреймворках и библиотеках?

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров6K

Всем привет! В данной статье я бы хотел рассказать о таком понятии как "ключи" в JavaScript фреймворках и библиотеках; зачем они используются и как помогают при работе с DOM.

Зачастую, на собеседованиях спрашивают про эту тему и нередко выходят ответы по типу: "чтобы предотвратить неконтролируемое поведение" или "их нужно указывать, т.к. это что-то на подобие уникальных идентификаторов" и др. Конечно, данные ответы с одной стороны - правильные, но главного они не отражают.

Я постараюсь внести небольшую ясность в эту тему показав то, как эта концепция работает на реальных примерах и какой код за ней стоит.

Читать далее

Ultimatum — очередной форк chromium-а или сказ о том как я кеши приручал

Уровень сложностиСредний
Время на прочтение29 мин
Количество просмотров3.6K

image


Добрый день! Меня зовут Тимур и я программист.


Сегодня я предлагаю рассмотреть очередную мою работу. Я пробросил в js прямой доступ к кешам chromium-a и теперь ими можно манипулировать из расширений браузера (при наличии соотв. permissions). Если вас не интересуют кресты а хочется халяльного js кода — переходите сразу в конец статьи, там описано реализованное api и как им пользоваться.


Итак, о чем речь и зачем это нужно?

Читать дальше →

Ближайшие события

Булевы операции двумерных тел

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров9.5K

В детстве меня всегда завараживали игры с динамическим ландшафтом: The Castle и Worms Armageddon. В то время я не понимал, как реализована эта удивительная механика разрушения и изменения мира. Позже я узнал, что секрет заключался в использовании растровой графики, но интерес к теме не исчез. В этой статье я хочу рассказать о векторном решении аналогичной задачи.

Читать далее

Введение в OpenLayers

Уровень сложностиПростой
Время на прочтение21 мин
Количество просмотров12K

Всем привет! Мы рассмотрим библиотеку для построения карт OpenLayers (версии 8.2.х). Вы узнаете о том, какие возможности она предоставляет, как ей пользоваться и почему в команде НСПД мы выбрали именно её. В статье будет много примеров кода, которые также доступны на GitHub и StackBlitz.

Для чтения статьи необходимо иметь хотя бы базовые знания HTML, CSS и JavaScript; иметь представление о сборщиках кода (в примерах использую Vite).

Приятного чтения! 🙂

Читать далее

Компьютерное зрение в автотестах. Поиск элемента по фото

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров2.9K

В автотестах для web-приложений, мы привыкли искать элементы по селектору. Это обязывает наделять html-элементы уникальными атрибутами, будь то класс или data-атрибут. Но когда проект становится достаточно большим, команда начинает задумываться над сокращением размера index.html, чтобы переходя по ссылке пользователь как можно быстрее получил полезную для него информацию. Тут-то и начинается гонка за каждый байт и каждую миллисекунду и необходимость любого «лишнего» символа в html разметке ставится под сомнение. В такие моменты data-атрибуты для автотестов это первые кандидаты на удаление из конечного html. Уже довольно давно я думал о том как же находить элементы на странице не привязываясь к DOM-дереву, результатом этих поисков является плагин, который я написал для Cypress. О нем, и о подходе, который в нем применяется, пойдет речь в данной статье.

Читать далее

Как нейминг влияет на качество кода?

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров5.9K

В этой статье я хочу обратить внимание на такой аспект разработки как нейминг.

Мы рассмотрим, почему важно уделять внимание названиям переменных и функций, и как грамотный подход к неймингу может сократить время и усилия на поддержку и развитие проекта. Надеюсь, мои мысли окажутся полезными. Буду рада обратной связи в комментариях.

Читать далее

Буфер обмена веб-приложений и как он хранит различные данные

Уровень сложностиПростой
Время на прочтение17 мин
Количество просмотров5.5K

Если вы достаточно давно пользуетесь компьютером, вы, скорее всего, знаете, что буфер обмена может хранить различные данные (картинки, текст с форматированием, файлы и др.). Как разработчика, меня начало раздражать то, что у меня нет точного представления, как буфер обмена хранит и организует данные разных типов.

Недавно я решил разобраться в механике работы буфера обмена и написал этот пост на основе моих изысканий. В основном речь пойдет о буфере обмена и его API, но мы также поговорим о том, как он взаимодействует с системным буфером обмена.

Давайте начнем с исследования различных API и их истории. Эти API имеют весьма интересные ограничения по типам данных, и мы увидим, как некоторые компании обошли эти ограничения. Мы также рассмотрим некоторые предложения, которые направлены на устранение этих ограничений (наиболее примечательное из них — Web Custom Formats).

Если вам хотя бы раз было интересно, как работает веб-буфер обмена, то эта статья для вас.

Читать далее

Камень, ножницы, бумага: путешествие во времени, стратегия и код

Время на прочтение7 мин
Количество просмотров1.8K
image


«Камень, ножницы, бумага» — простая, но очень популярная жестовая игра, которой вот уже не первый век развлекаются люди во всём мире. Поскольку правила игры просты, а жесты общепонятны, ею широко пользуются для улаживания споров, принятия решений или просто чтобы провести время. В этой статье мы исследуем богатую историю игры «Камень, ножницы, бумага», поговорим о том, как в неё играть, напишем саму игру и разберём структуру её кода, а также узнаем, как на материале этой игры можно прокачать навыки программирования.
Читать дальше →

Автоматизация тестирования API посредством Postman

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров9K

Добрый День! Меня зовут Галактион, я — QA, в этой статье я собираюсь поделиться с Вами опытом автоматизации API посредством Postman, используя язык программирования — JavaScript.

Проект, о котором пойдет речь — региональный портал государственных и муниципальных услуг, в котором интегрированы следующие сервисы (все перечислять не буду, т.к. их множество).

Читать далее

Вклад авторов