С днем программиста!👨💻
Поздравлю всех, кто причастен к этой сфере. Наш труд понятен не всем и далеко не каждый знает с какими трудностями мы с вами сталкиваемся, какие порой непосильные задачи решаем, но вы настоящие герои невидимого фронта!
Наслаждайтесь своей учебой или работой. Вы делаете мир лучше!🌎🆙
Поздравлю всех, кто причастен к этой сфере. Наш труд понятен не всем и далеко не каждый знает с какими трудностями мы с вами сталкиваемся, какие порой непосильные задачи решаем, но вы настоящие герои невидимого фронта!
Наслаждайтесь своей учебой или работой. Вы делаете мир лучше!🌎🆙
👍7❤3🎉3🔥1🥰1
Вы можете обновить веб-страницу в JavaScript с помощью?
Anonymous Quiz
30%
page.refresh
21%
location.reload
33%
window.refresh
15%
window.reload
👍4❤2
Поднятие переменных в JavaScript
Понимание механизма поднятия переменных (или "hoisting") — ключевой элемент для эффективной работы с JavaScript. Этот процесс часто может вводить в заблуждение, особенно новичков, поэтому давайте разберемся, что это такое.
Что такое поднятие (hoisting)?
Поднятие — это особенность JavaScript, когда объявления переменных "поднимаются" или перемещаются в верхнюю часть текущей области видимости. Но здесь важно понимать: поднимается только объявление, а не инициализация (присвоение значения).
Что еще стоит знать?
Поднятие также затрагивает объявления функций: полное объявление функции "поднимается" вверх.
У функциональных выражений (когда переменной присваивается функция) поднимается только объявление переменной, но не её значение.
Поднятие переменных — это механизм, с которым каждый разработчик на JavaScript сталкивается, независимо от уровня опыта. Понимание этого явления поможет избежать ненужных ошибок и написать более чистый и предсказуемый код.
Понимание механизма поднятия переменных (или "hoisting") — ключевой элемент для эффективной работы с JavaScript. Этот процесс часто может вводить в заблуждение, особенно новичков, поэтому давайте разберемся, что это такое.
Что такое поднятие (hoisting)?
Поднятие — это особенность JavaScript, когда объявления переменных "поднимаются" или перемещаются в верхнюю часть текущей области видимости. Но здесь важно понимать: поднимается только объявление, а не инициализация (присвоение значения).
Что еще стоит знать?
Поднятие также затрагивает объявления функций: полное объявление функции "поднимается" вверх.
У функциональных выражений (когда переменной присваивается функция) поднимается только объявление переменной, но не её значение.
Поднятие переменных — это механизм, с которым каждый разработчик на JavaScript сталкивается, независимо от уровня опыта. Понимание этого явления поможет избежать ненужных ошибок и написать более чистый и предсказуемый код.
🔥5👍2
О чистом коде.
Для программиста код - главный инструмент создания приложений, построения архитектуры. Также программный код - средство общения между программистами.
Поэтому я советую всем прочесть книгу Роберта Мартина "Чистый код".
В этой книги автор рассказывает основные приёмы написания программного кода, который будет интуитивно понятен другим программистам, а может и вам самим (Например, через неделю).
P.S.
В последующих постах продолжим обсуждения чистого кода.
Для программиста код - главный инструмент создания приложений, построения архитектуры. Также программный код - средство общения между программистами.
Поэтому я советую всем прочесть книгу Роберта Мартина "Чистый код".
В этой книги автор рассказывает основные приёмы написания программного кода, который будет интуитивно понятен другим программистам, а может и вам самим (Например, через неделю).
P.S.
В последующих постах продолжим обсуждения чистого кода.
🔥7
💻🔥В этом посте хочу поделиться с вами теоретическим материалом. Он вам может пригодиться на реальных проектах.
Существует два атрибута async и defer, которые мы можем указать у любых скриптов для вызова JavaScript кода.
Для чего они нужны❓
Атрибуты async и defer используются для отложенной загрузки скриптов на странице.
1️⃣Атрибут async указывает браузеру, что скрипт не блокирует загрузку страницы и может быть выполнен в любое время после загрузки. Это достаточно полезно для скриптов, которые не зависят от других скриптов или элементов на странице.
2️⃣Атрибут defer указывает браузеру, что скрипт также не блокирует загрузку страницы, но должен быть выполнен только после того, как весь HTML-код будет обработан. Это полезно для скриптов, которые зависят от других скриптов или элементов на странице.
Оба атрибута могут ускорить загрузку страницы и улучшить ее производительность, но их использование должно быть осознанным. Оно зависит от конкретных потребностей сайта и его скриптов.
Существует два атрибута async и defer, которые мы можем указать у любых скриптов для вызова JavaScript кода.
Для чего они нужны❓
Атрибуты async и defer используются для отложенной загрузки скриптов на странице.
1️⃣Атрибут async указывает браузеру, что скрипт не блокирует загрузку страницы и может быть выполнен в любое время после загрузки. Это достаточно полезно для скриптов, которые не зависят от других скриптов или элементов на странице.
2️⃣Атрибут defer указывает браузеру, что скрипт также не блокирует загрузку страницы, но должен быть выполнен только после того, как весь HTML-код будет обработан. Это полезно для скриптов, которые зависят от других скриптов или элементов на странице.
Оба атрибута могут ускорить загрузку страницы и улучшить ее производительность, но их использование должно быть осознанным. Оно зависит от конкретных потребностей сайта и его скриптов.
❤8
Часть 1
Оператор else if используется для определения нового условия, если первое условие не соблюдается (возвращает false). Оператор switch определяет несколько альтернативных блоков кода.
На самом деле предубеждение к switch существует с тех времен, когда компиляторы были неоптимизирующими. Тогда switch превращался в огромный набор условных операторов, что нельзя назвать лучшим решением. Зато выглядело это аккуратнее, чем такой же набор if'ов в исходном коде программе.
Оператор else if используется для определения нового условия, если первое условие не соблюдается (возвращает false). Оператор switch определяет несколько альтернативных блоков кода.
На самом деле предубеждение к switch существует с тех времен, когда компиляторы были неоптимизирующими. Тогда switch превращался в огромный набор условных операторов, что нельзя назвать лучшим решением. Зато выглядело это аккуратнее, чем такой же набор if'ов в исходном коде программе.
👍10
Часть 2
Сейчас же компилятор, когда видит switch использует либо дерево из условных переходов, либо использует таблицу переходов.
С другой стороны, при использовании конструкции switch-case не нужно забывать про особенности работы с ключевыми словами break и default.
Некоторые забывают, например, слово break и в результате имеют некорректное выполнение программы (выполняется не только нужный case, но и последующие, пока не встретится break)
Что еще хочу сказать. switch хорошо работает с константными целыми или перечисленными типами. В этом случае компилятор даже может подсказать, что есть проблема.
Сейчас же компилятор, когда видит switch использует либо дерево из условных переходов, либо использует таблицу переходов.
С другой стороны, при использовании конструкции switch-case не нужно забывать про особенности работы с ключевыми словами break и default.
Некоторые забывают, например, слово break и в результате имеют некорректное выполнение программы (выполняется не только нужный case, но и последующие, пока не встретится break)
Что еще хочу сказать. switch хорошо работает с константными целыми или перечисленными типами. В этом случае компилятор даже может подсказать, что есть проблема.
👍10👨💻2🎃2✍1🤬1🎉1🌭1🤣1😭1🤝1🫡1
Итак, мы с вами разобрались с операторами switch и else if, НО знаете ли вы об объектных литералов? Об этом и не только вы узнаете у автора данного канала.
👍7
Forwarded from Руслан Куянец | Reactify
Помню давно я видел график, который сравнивал скорость выполнения условных операторов if-else, switch и объектных литералов при различном количестве кейсов. По этому графику, до 7 кейсов разница в производительности между switch и if-else была не существенной, но затем обе начинали показывать увеличение времени выполнения. При этом, рост у switch был менее выраженным по сравнению с if-else.
С другой стороны, объектные литералы в этом сравнении изначально шли немного медленнее, но после 7 кейсов их время выполнения оставалось стабильным, не зависимо от того, было ли там 7 или 100000 кейсов. Это делает их потенциально более предпочтительным выбором для ситуаций с большим количеством кейсов.
Я не смог найти его, поэтому нарисовал😃
#ОбучающийПост #JavaScript #объектные_литералы
С другой стороны, объектные литералы в этом сравнении изначально шли немного медленнее, но после 7 кейсов их время выполнения оставалось стабильным, не зависимо от того, было ли там 7 или 100000 кейсов. Это делает их потенциально более предпочтительным выбором для ситуаций с большим количеством кейсов.
Я не смог найти его, поэтому нарисовал😃
#ОбучающийПост #JavaScript #объектные_литералы
👍6
This media is not supported in your browser
VIEW IN TELEGRAM
V0 – поможет сгенерировать полноценный интерфейс можно обычными текстовыми запросами. Вы можете создать абсолютно любой элемент UI, просто введя промт. Результат вы сможете сразу же отредактировать или доработать.
🔥11🐳1
Создание конвертера JSON в Typenoscript с помощью React, NodeJS и ChatGPT
https://habr.com/ru/companies/first/articles/761228/
Любой программист, часто работающий с API, может сэкономить массу времени, если использует ChatGPT для автоматизации преобразования JSON в интерфейсы Typenoscript.
https://habr.com/ru/companies/first/articles/761228/
Любой программист, часто работающий с API, может сэкономить массу времени, если использует ChatGPT для автоматизации преобразования JSON в интерфейсы Typenoscript.
👍10
Создал чат для обсуждения.
Там вы сможете вживую общаться со всеми об IT и около IT.
Не стесняйтесь задавать вопросы, есть знающие люди которые вам помогут. 👨💻
Переходите по ссылке https://news.1rj.ru/str/VoityvFrontend
Там вы сможете вживую общаться со всеми об IT и около IT.
Не стесняйтесь задавать вопросы, есть знающие люди которые вам помогут. 👨💻
Переходите по ссылке https://news.1rj.ru/str/VoityvFrontend
👌5