tgoop.com »
United States »
Frontend Interview - собеседования по Javascript / Html / Css » Telegram Web
Как отобразить теги на веб-странице?
Любые теги (вроде <p>) никак не показываются в браузере, поскольку воспринимаются браузером как команды для вставки элементов и изменения их свойств. Но иногда требуется на веб-странице вывести теги, например, для демонстрации HTML-кода. В этом случае используйте спецсимволы < и > для замены угловых скобок < и >. При этом <p> будет выглядеть как <p>
👉 @frontendInterview
Любые теги (вроде <p>) никак не показываются в браузере, поскольку воспринимаются браузером как команды для вставки элементов и изменения их свойств. Но иногда требуется на веб-странице вывести теги, например, для демонстрации HTML-кода. В этом случае используйте спецсимволы < и > для замены угловых скобок < и >. При этом <p> будет выглядеть как <p>
👉 @frontendInterview
❤5👎1
Ваши git и там и тут передают: как синхронизировать репозитории на мастере и репликах
Одна из важных задач при разработке отказоустойчивой распределенной системы — синхронизация данных на мастер‑узле со слейв‑узлом. В дальнейшем будем звать слейв‑узлы репликами. Методов синхронизации множество, и иногда более эффективным оказывается тот, который учитывает специфику хранимых данных.
Автор - ведущий ИТ‑инженер в отделе RnD и готовых решений Управления развития продукта. В статье расскажет о том, как они синхронизируют Git‑репозитории на двух узлах, какие существуют альтернативы и зачем это вообще нужно.
👉 @frontendInterview
Одна из важных задач при разработке отказоустойчивой распределенной системы — синхронизация данных на мастер‑узле со слейв‑узлом. В дальнейшем будем звать слейв‑узлы репликами. Методов синхронизации множество, и иногда более эффективным оказывается тот, который учитывает специфику хранимых данных.
Автор - ведущий ИТ‑инженер в отделе RnD и готовых решений Управления развития продукта. В статье расскажет о том, как они синхронизируют Git‑репозитории на двух узлах, какие существуют альтернативы и зачем это вообще нужно.
👉 @frontendInterview
👍1
Что происходит, когда функция, созданная с помощью замыкания, вызывается?
Anonymous Quiz
19%
Она создает новое лексическое окружение
72%
Она получает доступ к переменным своего лексического окружения
1%
Она удаляет свое лексическое окружение
9%
Она перезаписывает свои переменные
👎7
Что такое PWA?
PWA — это сокращение от словосочетания Progressive Web Applications, которое переводится на русский язык как «прогрессивные веб-приложения».
Есть 3 подхода к определению прогрессивных веб-приложений.
Обывательское
Это определение можно использовать, когда нужно объяснить, что такое прогрессивные веб-приложения, человеку, который не является веб-разработчиком.
PWA — это такие сайты, которые можно добавить в виде иконки на главный экран или рабочий стол, и при запуске их с этой иконки они будут выглядеть и работать неотличимо от нативных приложений, то есть запускаться в автономном режиме (standalone mode), в котором нет адресной строки и других элементов интерфейса браузера, работать без доступа к интернету, получать push-уведомления и т. д.
Официальное
PWA — это веб-приложения, которые применяют стратегию прогрессивного улучшения (progressive enhancement), то есть проверяют, поддерживает ли браузер те или иные Web API, и если да, то могут их использовать, чтобы обеспечить опыт взаимодействия (user experience) наравне с нативными приложениями. Отсюда и название — прогрессивные веб-приложения.
Техническое
PWA — это сайты, формально удовлетворяющие определённым техническим критериям.
Критерии у каждого браузера на каждой платформе могут быть различны и меняться со временем.
У браузеров на основе Chromium это:
- использование защищённого соединения HTTPS или локального хоста;
- наличие манифеста веб-приложения (JSON-файла, в котором указаны название приложения, описание приложения, ссылка хотя бы на одну растровую иконку с разрешением не ниже 512 x 512 px или векторную иконку в формате SVG).
Ранее браузеры на основе Chromium требовали также наличия Service Worker (JavaScript-кода, который работает в фоновом режиме независимо от веб-страницы, даже если вкладка или браузер закрыты). Service Worker позволяет получать push-уведомлений, синхронизировать данные в фоне, перехватывать и обрабатывать сетевые запросы, что позволяет реализовать кеширование и работу без доступа к интернету, и выполнять другие задачи.
Если сайт удовлетворяет этим критериям, то при его открытии в браузерах на основе Chromium появится предложение установить этот сайт как приложение
👉 @frontendInterview
PWA — это сокращение от словосочетания Progressive Web Applications, которое переводится на русский язык как «прогрессивные веб-приложения».
Есть 3 подхода к определению прогрессивных веб-приложений.
Обывательское
Это определение можно использовать, когда нужно объяснить, что такое прогрессивные веб-приложения, человеку, который не является веб-разработчиком.
PWA — это такие сайты, которые можно добавить в виде иконки на главный экран или рабочий стол, и при запуске их с этой иконки они будут выглядеть и работать неотличимо от нативных приложений, то есть запускаться в автономном режиме (standalone mode), в котором нет адресной строки и других элементов интерфейса браузера, работать без доступа к интернету, получать push-уведомления и т. д.
Официальное
PWA — это веб-приложения, которые применяют стратегию прогрессивного улучшения (progressive enhancement), то есть проверяют, поддерживает ли браузер те или иные Web API, и если да, то могут их использовать, чтобы обеспечить опыт взаимодействия (user experience) наравне с нативными приложениями. Отсюда и название — прогрессивные веб-приложения.
Техническое
PWA — это сайты, формально удовлетворяющие определённым техническим критериям.
Критерии у каждого браузера на каждой платформе могут быть различны и меняться со временем.
У браузеров на основе Chromium это:
- использование защищённого соединения HTTPS или локального хоста;
- наличие манифеста веб-приложения (JSON-файла, в котором указаны название приложения, описание приложения, ссылка хотя бы на одну растровую иконку с разрешением не ниже 512 x 512 px или векторную иконку в формате SVG).
Ранее браузеры на основе Chromium требовали также наличия Service Worker (JavaScript-кода, который работает в фоновом режиме независимо от веб-страницы, даже если вкладка или браузер закрыты). Service Worker позволяет получать push-уведомлений, синхронизировать данные в фоне, перехватывать и обрабатывать сетевые запросы, что позволяет реализовать кеширование и работу без доступа к интернету, и выполнять другие задачи.
Если сайт удовлетворяет этим критериям, то при его открытии в браузерах на основе Chromium появится предложение установить этот сайт как приложение
👉 @frontendInterview
Html, Css & Javascript in easy steps Special Edition
Книга в простых шагах инструктируют читателя по каждому из трех аспектов веб разработки, которые используются для создания современных веб-страниц:
- Теги языка разметки гипертекста (HTML)
- Правила каскадных таблиц стилей (CSS)
- Функции JavaScript
Вы узнаете, как создавать веб-страницы для отображения текста, изображений, списков, таблиц, гиперссылок, форм, аудио и видео. Каждая глава, для укрепления знаний, содержит контрольные вопросы
👉 @frontendInterview
Книга в простых шагах инструктируют читателя по каждому из трех аспектов веб разработки, которые используются для создания современных веб-страниц:
- Теги языка разметки гипертекста (HTML)
- Правила каскадных таблиц стилей (CSS)
- Функции JavaScript
Вы узнаете, как создавать веб-страницы для отображения текста, изображений, списков, таблиц, гиперссылок, форм, аудио и видео. Каждая глава, для укрепления знаний, содержит контрольные вопросы
👉 @frontendInterview
❤3👍3
Last
Найдите последний элемент из данных аргументов Если передан один аргумент, который представляет собой список/массив или строку, верните его последний элемент. Гарантируется, что будет хотя бы один аргумент и что массивы/списки/строки с одним аргументом не будут пустыми.
Примеры:
👉 @frontendInterview
Найдите последний элемент из данных аргументов Если передан один аргумент, который представляет собой список/массив или строку, верните его последний элемент. Гарантируется, что будет хотя бы один аргумент и что массивы/списки/строки с одним аргументом не будут пустыми.
Примеры:
last(5) ==> 5
last([1, 2, 3, 4]) ==> 4
last("xyz") ==> "z"
last(1, 2, 3, 4) ==> 4
last([1, 2], [3, 4]) ==> [3, 4]
last([[1, 2], [3, 4]]) ==> [3, 4]
👉 @frontendInterview
Какие есть примеры микрозадач ?
Микрозадачи — это задачи, которые планируются для выполнения после завершения текущего выполнения скрипта, но до того, как браузер продолжит другие задачи, такие как рендеринг или обработка событий. Они имеют более высокий приоритет по сравнению с макрозадачами и выполняются немедленно после текущего стека вызовов, но перед любыми другими событиями или рендерингом.
1. Промисы используют механизм таких задач для своих колбэков
Вывод будет следующим:
Сначала выполняется синхронный код (
2. Функция queueMicrotask позволяет явно добавить микрозадачу в очередь микрозадач. Это может быть полезно для разделения вычислений на более мелкие асинхронные операции, не блокируя поток выполнения и интерфейс.
Вывод будет аналогичным:
Сначала выполняется основной поток кода, затем микрозадача, добавленная через
👉 @frontendInterview
Микрозадачи — это задачи, которые планируются для выполнения после завершения текущего выполнения скрипта, но до того, как браузер продолжит другие задачи, такие как рендеринг или обработка событий. Они имеют более высокий приоритет по сравнению с макрозадачами и выполняются немедленно после текущего стека вызовов, но перед любыми другими событиями или рендерингом.
1. Промисы используют механизм таких задач для своих колбэков
then
, catch
, и finally
. Когда промис переходит в состояние выполнено (fulfilled
) или отклонено (rejected
), соответствующие колбэки планируются как микрозадачи. Это означает, что они будут выполнены сразу после текущего стека вызовов, но до того, как движок возьмется за выполнение следующей макрозадачи, например, обработку событий или таймеров.console.log('Начало');
Promise.resolve().then(() => {
console.log('Обработан промис');
});
console.log('Конец');
Вывод будет следующим:
Начало
Конец
Обработан промис
Сначала выполняется синхронный код (
Начало
и Конец
), и только после его завершения, но до того как браузер перейдет к другим задачам, выполняются микрозадачи, связанные с промисами (Обработан промис
).2. Функция queueMicrotask позволяет явно добавить микрозадачу в очередь микрозадач. Это может быть полезно для разделения вычислений на более мелкие асинхронные операции, не блокируя поток выполнения и интерфейс.
console.log('Перед queueMicrotask');
queueMicrotask(() => {
console.log('Выполнено в микрозадаче');
});
console.log('После queueMicrotask');
Вывод будет аналогичным:
Перед queueMicrotask
После queueMicrotask
Выполнено в микрозадаче
Сначала выполняется основной поток кода, затем микрозадача, добавленная через
queueMicrotask
.👉 @frontendInterview
❤4
Какое значение примет result?
Anonymous Quiz
30%
[object Array]
38%
[object Object]
8%
toString
17%
[]
7%
[Object]
Как визуально выровнять текст с маркерами?
Любой верстальщик регулярно сталкивается с маркированными списками и маркерами для этих списков, которыми можно красиво стилизовать эти списки, особенно если это пункты меню. Списки выглядят круто и вроде больше ничего не надо дорабатывать, пока не появляется многострочный пункт, когда переносящийся текст начинает выглядеть некрасиво.
Такое происходит всегда, когда используется CSS свойство lift-style-position: indise, которое помещает буллеты внутрь блока, где располагается список. Если же этого не сделать, то маркеры будут выходить за границу блока списка. Это хорошо видно на прилагающейся картинке.
На ней так же хорошо видно, что когда к правому списку было применено свойство lift-style-position: indise весь переносимый текст стал выезжать за визуальные границы размещения маркеров, что выглядит некрасиво. Для того, что исправить данную ситуацию необходимо воспользоваться небольшой хитростью.
👉 @frontendInterview
Любой верстальщик регулярно сталкивается с маркированными списками и маркерами для этих списков, которыми можно красиво стилизовать эти списки, особенно если это пункты меню. Списки выглядят круто и вроде больше ничего не надо дорабатывать, пока не появляется многострочный пункт, когда переносящийся текст начинает выглядеть некрасиво.
Такое происходит всегда, когда используется CSS свойство lift-style-position: indise, которое помещает буллеты внутрь блока, где располагается список. Если же этого не сделать, то маркеры будут выходить за границу блока списка. Это хорошо видно на прилагающейся картинке.
На ней так же хорошо видно, что когда к правому списку было применено свойство lift-style-position: indise весь переносимый текст стал выезжать за визуальные границы размещения маркеров, что выглядит некрасиво. Для того, что исправить данную ситуацию необходимо воспользоваться небольшой хитростью.
li {text-indent:-1em;padding:0 0 0 1em;}
👉 @frontendInterview
👍9
This media is not supported in your browser
VIEW IN TELEGRAM
Станьте AI-разработчиком на Python и зарабатывайте от 150.000₽ в месяц 🔥🔥🔥
Мы научим вас создавать и тренировать нейронные сети, и вы сможете:
1️⃣ Устроиться разработчиком в крупную компанию и зарабатывать от 150 тыс. ₽ в месяц
2️⃣ Разрабатывать такие проекты на заказ и зарабатывать от 500 тыс. ₽ за проект
3️⃣ Создать нейро-сотрудника в вашей компании и вырасти на +30-100% в зарплате
На интенсиве будет много практики: создадим 9 нейросетей за 1 вечер:
🧬 Прогноз стоимости золота
🧬 Сегментация изображения для робота доставщика
🧬 Трекинг людей на видео
Ведущий интенсива - Senior AI-разработчик и основатель Университета искусственного интеллекта
🔥 Регистрируйтесь на бесплатный интенсив! Встречаемся в ближайшую среду
Мы научим вас создавать и тренировать нейронные сети, и вы сможете:
1️⃣ Устроиться разработчиком в крупную компанию и зарабатывать от 150 тыс. ₽ в месяц
2️⃣ Разрабатывать такие проекты на заказ и зарабатывать от 500 тыс. ₽ за проект
3️⃣ Создать нейро-сотрудника в вашей компании и вырасти на +30-100% в зарплате
На интенсиве будет много практики: создадим 9 нейросетей за 1 вечер:
🧬 Прогноз стоимости золота
🧬 Сегментация изображения для робота доставщика
🧬 Трекинг людей на видео
Ведущий интенсива - Senior AI-разработчик и основатель Университета искусственного интеллекта
🔥 Регистрируйтесь на бесплатный интенсив! Встречаемся в ближайшую среду
👎1
Истории и боли frontend-разработчика
В этой статье опытный frontend-разработчик рассказывает интересные истории из своей практики.
👉 @frontendInterview
В этой статье опытный frontend-разработчик рассказывает интересные истории из своей практики.
👉 @frontendInterview
Какой атрибут позволяет передавать куки только по защищенному соединению HTTPS?
Anonymous Quiz
2%
Expires
2%
Max-Age
61%
HttpsOnly
35%
Secure
👍5
Что такое семантика в HTML?
Семантика в контексте веб-разработки относится к использованию HTML-тегов в соответствии с их предназначением и значением. Это означает выбор подходящих тегов для разметки различных частей контента на веб-странице таким образом, чтобы они отражали его смысл и структуру. Такая разметка помогает не только людям, но и поисковым системам и другим машинным агентам понимать структуру и содержание веб-страницы, что влияет на доступность сайта и его поисковую оптимизацию (SEO).
Примеры:
-
-
-
-
-
-
-
-
-
-
-
-
Значение семантики:
- Доступность: Делает веб-контент более доступным для людей с ограниченными возможностями, использующих вспомогательные технологии, такие как экранные читалки, поскольку эти технологии могут интерпретировать структуру и предоставлять контент в более понятной форме.
- SEO: Поисковые системы используют ее для лучшего понимания структуры и содержания веб-страницы, что может улучшить индексацию и ранжирование сайта.
- Улучшенная поддержка и разработка: Делает код более читаемым и легким для понимания, что облегчает сопровождение и дальнейшую разработку сайта.
👉 @frontendInterview
Семантика в контексте веб-разработки относится к использованию HTML-тегов в соответствии с их предназначением и значением. Это означает выбор подходящих тегов для разметки различных частей контента на веб-странице таким образом, чтобы они отражали его смысл и структуру. Такая разметка помогает не только людям, но и поисковым системам и другим машинным агентам понимать структуру и содержание веб-страницы, что влияет на доступность сайта и его поисковую оптимизацию (SEO).
Примеры:
-
<article>
: Для независимого контента, который имеет смысл сам по себе (например, статья в блоге).-
<aside>
: Для контента, слабо связанного с основным содержимым страницы (например, боковая панель).-
<details>
: Для контента, который можно скрыть или показать по запросу пользователя.-
<figcaption>
: Для подписи к изображению в элементе <figure>
.-
<figure>
: Для самостоятельных элементов, таких как изображения, диаграммы, коды, которые сопровождаются подписью.-
<footer>
: Для нижнего колонтитула документа или раздела.-
<header>
: Для верхнего колонтитула документа или раздела.-
<main>
: Для основного содержимого документа.-
<mark>
: Для выделения частей текста.-
<nav>
: Для навигационных ссылок.-
<section>
: Для разделов содержимого, которые связаны с определенной темой.-
<summary>
: Для заголовка элемента <details>
.Значение семантики:
- Доступность: Делает веб-контент более доступным для людей с ограниченными возможностями, использующих вспомогательные технологии, такие как экранные читалки, поскольку эти технологии могут интерпретировать структуру и предоставлять контент в более понятной форме.
- SEO: Поисковые системы используют ее для лучшего понимания структуры и содержания веб-страницы, что может улучшить индексацию и ранжирование сайта.
- Улучшенная поддержка и разработка: Делает код более читаемым и легким для понимания, что облегчает сопровождение и дальнейшую разработку сайта.
👉 @frontendInterview
👍8
Как получить реальный опыт во фронтенд-разработке за 7 дней?
А именно:
- Сверстать веб-сайт на HTML + CSS;
- Реализовать функционал на JavaScript;
- Пощупать фронтенд-фреймворк Angular;
- Подключить Backend и загрузить сайт на хостинг.
В итоге своими руками разработаешь качественный сайт, который не стыдно добавить в портфолио или продать.
Такой опыт можно получить на бесплатном практикуме от Айтилогии с поддержкой от опытных разработчиков на каждом этапе.
👉 Приходи на бесплатное обучение и зови с собой друзей
Бонусом получишь гайд для поиска работы и заказов на фронтенд-разработку.
А именно:
- Сверстать веб-сайт на HTML + CSS;
- Реализовать функционал на JavaScript;
- Пощупать фронтенд-фреймворк Angular;
- Подключить Backend и загрузить сайт на хостинг.
В итоге своими руками разработаешь качественный сайт, который не стыдно добавить в портфолио или продать.
Такой опыт можно получить на бесплатном практикуме от Айтилогии с поддержкой от опытных разработчиков на каждом этапе.
👉 Приходи на бесплатное обучение и зови с собой друзей
Бонусом получишь гайд для поиска работы и заказов на фронтенд-разработку.
👎2
Регулярные выражения. Основы
Если вы программист, не имеющий опыта работы с регулярными выражениями, то данная книга – как раз то, что нужно для первого знакомства с ними. Многочисленные примеры, приведенные в книге, не только помогут вам освоить основы регулярных выражений, но и научат применять их для поиска, извлечения и преобразования фрагментов текста посредством их сопоставления с определенными символами, словами и шаблонами. Регулярные выражения эффективно применяются во многих областях программирования. Они доступны в утилитах UNIX и таких языках программирования, как Perl, Java, javascript и С#. Прочитав книгу, вы будете знать синтаксис наиболее распространенных диалектов регулярных выражений и понимать, в каких случаях они смогут обеспечить вам значительную экономию времени.
👉 @frontendInterview
Если вы программист, не имеющий опыта работы с регулярными выражениями, то данная книга – как раз то, что нужно для первого знакомства с ними. Многочисленные примеры, приведенные в книге, не только помогут вам освоить основы регулярных выражений, но и научат применять их для поиска, извлечения и преобразования фрагментов текста посредством их сопоставления с определенными символами, словами и шаблонами. Регулярные выражения эффективно применяются во многих областях программирования. Они доступны в утилитах UNIX и таких языках программирования, как Perl, Java, javascript и С#. Прочитав книгу, вы будете знать синтаксис наиболее распространенных диалектов регулярных выражений и понимать, в каких случаях они смогут обеспечить вам значительную экономию времени.
👉 @frontendInterview
👍1