Обновить
0
0

Fullstack-разработчик

Отправить сообщение

Глобальная область видимости в JavaScript

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

Как любой другой язык программирования, JavaScript позволяет создавать элементы доступные в любом месте приложения. И, как и с другими механизмами, JS тут имеет свои уникальные, но важные особенности, которые мы подробно сейчас рассмотрим.

Глобальная область видимости может принимать различные формы в зависимости от того как загружаются код JS...

Какие ещё формы?

Всплытие переменных и функций в JavaScript

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

В JavaScript есть уникальная особенность, переменную или функцию можно использовать по коду выше, её объявление...

Ииии что это за особенность?

Дочерние процессы в Node.js

Уровень сложностиСредний
Время на прочтение21 мин
Охват и читатели5.3K

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

Если воркеры запускают отдельный поток внутри одного процесса в котором работает программа, то модуль child_process порождает новый процесс в ОС, что является гораздо более тяжёлой операцией. Архитектура многопоточки в JavaScript, такова что потоки максимально изолированы друг от друга и не имеют общей памяти. Тем не менее есть масса способов обойти это ограничение если очень нужно и в своих статьях я приводил подобные примеры. С процессами всё иначе. Они жёстко изолированы, один от другого и пробить этот барьер способов нет.

Если говорить простым языком то воркер, это как нанять ещё одного гребца на Вашу галеру. С ним можно быстро и легко общаться, ведь вы буквально находитесь на одном суде (процессе) и даже на прямую без посредников обмениваться сообщениями (SharedArrayBuffer). Но вот если он зарулит на скалы, то и потоните вы тоже вместе. Дочерний процесс же это как построить новую галеру с другим капитаном и экипажем. Дорого, долго, обменивать данными можно только через медленные записки (IPC), зато он полностью независим от Вас, а Вы от него.

Как-же запустить эти дочерние процессы?

Передачи данных в воркеры JavaScript

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели6.5K

Передача данных между воркерами в JavaScript, не так проста и имеет массу особенностей завязанных на реализации потоков в языке. Хотите узнать о том какие ограничения накладывает архитектура многопоточки JS и как эти ограничения безопасно обойти?

Хочу!

Аргументы воркеров в Node.js и на что они влияют

Уровень сложностиСложный
Время на прочтение18 мин
Охват и читатели5.9K

Подробное описание аргументов, доступных при создании воркеров в Node.js и как их можно использовать для многопоточки в серверном JavaScript

Чё ещё за аргументы?

Веб-воркеры — многопоточность в JavaScript

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

Даже самые зелёные новички в вебе знаю, что скрипты JS, нужно располагать в самом низу страницы перед закрывающим тегом `` и всё знаю что это повышает скорость загрузки страницы. Но Вы когда-нибудь задумывалась почему оно так?

JavaScript по своей природе однопоточный язык, но мало того, он делит этот единственный поток сразу с HTML и CSS. Это приводит к тому, что встречая тег <script>, браузер начинает, исполнять его код, при этом останавливая дальнейшую обработку HTML и CSS и в результате пользователь наблюдает белый экран, вместо сайта, до тех самых пор пока, браузер не закончит с кодом JavaScript. Именно потому убирая подключения скриптов, в самый конец страницы, мы даём интерфейсу сайта максимально быстро погрузится и не бесить пользователей белой простынёй.

Но подобный подход годен не везде, иногда жизненно необходимо, чтобы код JS, начал исполнение как можно раньше. Да и при подключении в самом низу, крупный JS-бандл, может здорово подкосить перфоманс сайта. Как быть в таких ситуациях? Смирится с тем что пользователи будут испытывать определённый дискомфорт во время загрузки сайта? Конечно же нет, можно попробовать вынести наш код в веб-воркеры!

Так что такое эти ваши веб-воркеры?

Node.js — асинхронность по умолчанию

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели7.3K

Возможно Вам доводилось слышать о том что Node.js идеален для создания веб-серверов. В этой статье я объясню, почему оно так и какие архитектурные принципы заложенные в основу серверного JavaScript, делают его таким подходящим для приложений с высокой интенсивностью ввода/вывода.

Узнать почему?

Работа с атрибутами HTML элементов в JavaScript

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели7K

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

Как работать с атрибутами в JavaScript?

Селекторы HTML элементов в JavaScript

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

Манипулирование деревом DOM, это альфа и омега любого фронтенд-разработчика, а это не возможно без селекторов позволяющих находить HTML элементы. Давайте подробно разберёмся как они работают.

Основных методов селекторов в JavaScript всего 2 и оба они являются методами классов Document и Element:

Каких?

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность

Специализация

Фулстек разработчик
JavaScript
Vue.js