frontendinterview | Unsorted

Telegram-канал frontendinterview - Frontend Interview - собеседования по Javascript / Html / Css

12730

Канал для подготовки к собеседованиям по фронтенду Админ, сотрудничество, реклама: @seniorFrontPromo, @maria_seniorfront Менеджер по рекламе: @Spiral_Yuri Купить рекламу: https://telega.in/c/frontendinterview Номер заявления в РКН № 4959045795

Subscribe to a channel

Frontend Interview - собеседования по Javascript / Html / Css

🌐 Единая точка входа в IT!

Хочешь освоить полный стек технологий, подготовиться к реальным собеседованиям и получить работу мечты? Мы собрали всё необходимое для твоего роста и развития в одном месте!

Выбирай направление и становись частью IT сообщества:

👩‍💻 React Frontend

👩‍💻 Ruby Backend

👩‍💻 iOS Mobile

👩‍💻 Android Mobile

🖥 PHP Backend

👩‍💻 Node.js Backend

👩‍💻 Rust Backend

👩‍💻 Java Backend

👣 Golang Backend

👩‍💻 Python Backend

👩‍💻 QA & Testing

🖥 Общее IT

👨‍💻
Вакансии IT

📅
Митапы IT

А также у нас есть собственная платформа для подготовки к собеседованиям!

🔹 1000+ вопросов по всем направлениям
🔹 Удобные тренажеры для отработки навыков
🔹 Система фильтров по технологиям и уровню сложности
🔹 Персональная статистика прогресса и история подготовки

YeaHub помогает расти и достигать целей.

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Т-Банк открыл набор на новый поток стажировок 💻

Есть много направлений: разработка (на восьми языках программирования!), ML, SRE, QA, аналитика, менеджмент, редактура, маркетинг и юриспруденция. Ждут студентов и начинающих специалистов, готовых посвящать работе от 20 часов в неделю.

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

Выберите направление, отправьте заявку и решите экзамены до 30 января

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Паттерны проектирования jаvascript

Автор дает исчерпывающее представление о паттернах проектирования в современном jаvascript (ES6+) и приводит практические примеры их применения. Сначала вы познакомитесь с порождающими, структурными и поведенческими паттернами проектирования в идиоматическом для jаvascript стиле, а затем переключитесь на архитектурные паттерны и паттерны пользовательского интерфейса. Вы узнаете, как применять паттерны, характерные для таких библиотек, как React, и распространять их на фронтенд и микрофронтенд.

В последней части книги представлены и проиллюстрированы паттерны улучшения производительности и безопасности, включая обмен сообщениями, события и стратегии загрузки ресурсов, а также паттерны высокопроизводительных асинхронных вычислений. В издании приводятся примеры использования React и Next.js, а также jаvascript и Web API. Они помогут выбрать и внедрить проверенные паттерны проектирования в различных веб-экосистемах и изменить ваш подход к разработке.

👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Канал для начинающих системных аналитиков!

Здесь вы получите ответы на:

- Какое развитие у системного аналитика и сколько он может получать?
- Как подготовиться к собеседованию?
- Как преодолеть страхи при переходе в IT?
- Как правильно вести коммуникацию с заказчиком?
- Какие ошибки бывают при проектировании?

А так же много практической пользы, которая поможет новичкам начать путь в IT!

Подписаться

#реклама
О рекламодателе

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Поднимаем мотивацию

👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Интеграция CSS-фреймворков в Angular: советы, которые вы не знали

Вы создали новое Angular‑приложение, подключили популярный CSS‑фреймворк, но вместо ожидаемого вау‑эффекта столкнулись с проблемами: стили выглядят не так, как хотелось, валидация форм работает странно, а некоторые элементы вообще не реагируют на изменения состояния. Знакомо? Это типичная ситуация, когда CSS‑фреймворки интегрируются без учета особенностей Angular.

Эта статья поможет вам разобраться, почему возникают такие трудности, и покажет, как правильно интегрировать CSS‑фреймворки в Angular. Мы рассмотрим ключевые проблемы, разберем их решения и реализуем стильное, реактивное поле ввода с применением лучших практик Angular.

👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Как добавить стили на каждый элемент страницы?

Чтобы добавить стили на каждый элемент страницы, можно использовать универсальный селектор *. Этот селектор выбирает все элементы в документе.

Пример использования

* {
margin: 0;
padding: 0;
box-sizing: border-box;
}


Пример кода выше сбрасывает отступы (margin) и внутренние отступы (padding) всех элементов на странице до нуля. Это часто делается для того, чтобы избежать неожиданных отступов, которые могут быть заданы по умолчанию браузером. Также устанавливается box-sizing: border-box, что изменяет модель коробки элемента, позволяя лучше контролировать размеры элементов при добавлении отступов и границ.

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

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

👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

⚡️ В сети начали массово сливать курсы и книги известных онлайн школ

Вот отсортированная база с тонной материала(постепенно пополняется):

БАЗА (4687 видео/книг):

(363 видео, 87 книги) — Python
(415 видео, 68 книги) — Frontend
(143 видео, 33 книги) — ИБ/Хакинг
(352 видео, 89 книги) — С/С++
(343 видео, 87 книги) — Java
(176 видео, 32 книги) — Git
(293 видео, 63 книги) — C#
(174 видео, 91 книги) — DevOps
(167 видео, 53 книги) — PHP
(227 видео, 83 книги) — SQL/БД
(163 видео, 29 книги) — Linux
(107 видео, 43 книги) — СисАналз
(181 видео, 32 книги) — Go
(167 видео, 43 книги) — Kotlin/Swift
(112 видео, 24 книги) — Flutter
(137 видео, 93 книги) — DS/ML
(113 видео, 82 книги) — GameDev
(183 видео, 37 книги) — UI/UX
(129 видео, 73 книги) — QA
(213 видео, 63 книги) — Rust
(121 видео, 24 книги) — Ruby


Скачивать ничего не нужно — все выложили в Telegram

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Sentence Smash

Напишите функцию, которая принимает массив слов, объединяет их в предложение и возвращает это предложение
Вы можете игнорировать необходимость очистки слов или добавления знаков препинания, но вам следует добавлять пробелы между каждым словом.
Будьте внимательны: ни в начале, ни в конце предложения не должно быть пробела!

Пример:

['hello', 'world', 'this', 'is', 'great']  =>  'hello world this is great'


👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Как мерить скорость работы и отзывчивость сайта?

Web Vitals
Google разработал набор метрик, называемых Web Vitals, которые оценивают ключевые аспекты пользовательского опыта:
Largest Contentful Paint (LCP): Время загрузки основного контента страницы.
First Input Delay (FID): Время от первого взаимодействия пользователя с сайтом до момента, когда браузер начинает обработку этого взаимодействия.
Cumulative Layout Shift (CLS): Стабильность макета страницы (измеряет неожиданные сдвиги контента).

Инструменты для измерения производительности
Google Lighthouse: Инструмент, встроенный в Chrome DevTools, который анализирует страницу и предлагает улучшения.
PageSpeed Insights: Онлайн-сервис от Google, который предоставляет отчеты о производительности сайта на мобильных и десктопных устройствах.
WebPageTest: Позволяет проводить детализированные тесты производительности с разными настройками сети и устройства.

Встроенные инструменты браузера
Chrome DevTools: Включает вкладку "Performance" для записи и анализа производительности загрузки страницы и исполнения скриптов.
Network Panel: Показывает время загрузки различных ресурсов, что помогает найти "узкие места".

Мониторинг в реальном времени
Google Analytics: Предоставляет отчеты о скорости загрузки страниц.
New Relic, Datadog: Платформы для мониторинга производительности приложений и сайтов в реальном времени.

Оптимизация и анализ
Использование CDN (Content Delivery Network): Ускоряет доставку контента пользователям, снижая задержки.
Минимизация и сжатие ресурсов: Уменьшение размеров файлов CSS, JavaScript и изображений.
Кэширование: Хранение копий статических ресурсов для ускорения повторных посещений.

👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Как мы мигрируем с JQuery на React

Вокруг все говорят о серверных компонентах реакта, о серверном рендеринге, и разных новшествах в мире фронтенде. Как будто JQuery в один миг взял и исчез. Несмотря ни на что он всё ещё остаётся самой популярной библиотекой .

Сегодня я вам расскажу, как мы постепенно мигрируем с JQuery на React.

👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Как и зачем писать тесты?

«Тесты — это лишняя работа», «тесты писать необязательно» — такие мнения часто можно услышать в разговорах о тестировании. В этой статье мы постараемся развеять этот миф и рассмотрим плюсы тестирования и минусы его отсутствия.

Тесты делают код более прочным и живучим. Одновременно с этим тесты — это отличная документация, которая не врёт и не устаревает. Также тесты можно использовать как инструмент разработки программы.

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

👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Новогодние скидки от realme

Большой выбор моделей со скидкой. Скидки в новый год!

Узнать цену

#реклама
market.yandex.ru

О рекламодателе

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Подработка на нейросетях до 150к в мес. Обучим с нуля!

ИИ-Таргетолог Простой способ начать зарабатывать в интернете! от 30 - 150 000 рублей в месяц!

✅Узнаете, как настраивать таргетированную рекламу с помощью нейросетей за 1 видео!

✅Без траты долгих лет на обучение. Без мутных и незаконных схем.

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

✅Безопасно уволиться от старого работодателя.
Получать доход на удаленке выше, чем на обычной работе.



Узнать больше

#реклама 16+
institute.yagla.ru

О рекламодателе

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

JavaScript для начинающих

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

👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Почему лучше не встраивать строки непосредственно в DOM?

Передача строки непосредственно в DOM (Document Object Model) может привести к различным проблемам, связанным с безопасностью и корректностью рендеринга. Рассмотрим более подробно, почему это не рекомендуется.

XSS-атаки (Cross-Site Scripting):
Если строка содержит пользовательский ввод или динамически полученные данные, она может включать вредоносный код. Например, злоумышленник может вставить <script> тег, который будет выполнен браузером и может украсть данные пользователей или выполнить другие вредоносные действия.

const userInput = "<img src='x' onerror='alert(\"XSS Attack\")'>";
document.getElementById('output').innerHTML = userInput;


Неправильный рендеринг HTML:
Строка, содержащая HTML-код, может быть неправильно интерпретирована или отрендерена браузером. Это может привести к некорректному отображению страницы или нарушению её структуры.
const invalidHTML = "<div>Unclosed tag";
document.getElementById('output').innerHTML = invalidHTML;
// Это может привести к неправильному отображению содержимого.


Как безопасно работать с динамическим контентом?

- Вместо передачи строк, рекомендуется использовать методы DOM API, такие как createElement, appendChild, textContent и другие. Эти методы позволяют безопасно добавлять элементы и текст в DOM.
const userInput = "Safe text";
const outputElement = document.getElementById('output');
const textNode = document.createTextNode(userInput);
outputElement.appendChild(textNode);


- Если необходимо вставить HTML-код из строки, можно использовать методы, которые экранируют потенциально опасные символы.
const userInput = "<div>Safe content</div>";
const outputElement = document.getElementById('output');
outputElement.textContent = userInput;
// Использование textContent гарантирует безопасное добавление текста.


Примеры

Добавление текстового контента:
const userInput = "Some user-provided text";
const outputElement = document.getElementById('output');
outputElement.textContent = userInput;


Создание и добавление элементов:
const userInput = "Some user-provided text";
const outputElement = document.getElementById('output');
const paragraph = document.createElement('p');
paragraph.textContent = userInput;
outputElement.appendChild(paragraph);


👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Find the capitals

Напишите функцию, которая принимает в качестве аргумента одну непустую строку, состоящую только из строчных и прописных букв ascii, и возвращает упорядоченный список, содержащий индексы всех заглавных (прописных) букв в этой строке.

Пример (вход --> выход):

"CodEWaRs" --> [0,3,4,6]


👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Что такое inline стили, и какой они имеют приоритет?

Инлайн-стили — это CSS-правила, прописанные непосредственно в HTML-элементе через атрибут style. Они имеют более высокий приоритет, чем стили из таблиц стилей или встроенные теги <style>, но уступают !important. Использование инлайн-стилей снижает переиспользуемость и усложняет поддержку.

👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Крупнейший университет искусственного интеллекта

Учим использовать ChatGPT в профессиональных целях, создавать нейро-сотрудников и зарабатывать на искусственном интеллекте.

✨ 8 000+ студентов со всего мира

✨ 600+ AI-проектов, созданных студентами

✨ Сборная Университета — победители крупнейших AI-хакатонов России

✨ Стажировки в крупнейших компаниях России (РЖД, Ростелеком, РУДН, Совкомбанк, Самолет и другие)

✨ Трудоустраиваем выпускников в крупнейшие компании (Яндекс, ВТБ, Сбербанк, Роскосмос и другие)

Будем рады видеть тебя в наших рядах!

Узнать больше

#реклама 16+
neural-university.ru

О рекламодателе

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Курс "Дизайн карточек для WB и Ozon". Бесплатно и с нуля

Дизайнер карточек для маркетплейсов — востребованная и доходная профессия 💰
Научись ей бесплатно!

- Бесплатный доступ к курсу
- Разбор ДЗ от наставника
- Мощные кейсы в портфолио

Узнать больше

#реклама 16+
yudaevschool24.online

О рекламодателе

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Какое свойство позволяет вам спрятать элемент, но сохранить занимаемое им пространство на странице?

Это свойство называется visibility. Это свойство может принимать несколько значений, но основными для скрытия элемента являются visible и hidden.

.hidden-element {
visibility: hidden;
}


По умолчанию, элементы имеют значение visibility: visible;, что означает, что они видимы на странице.
Когда элементу назначается значение visibility: hidden;, он становится невидимым, но продолжает занимать то же пространство в макете страницы, что и когда он был видимым.

В этом примере, второй <div> с классом hidden-element скрыт, но продолжает занимать место на странице. Третий <div> расположен после него, как если бы скрытый элемент был видимым.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style>
.hidden-element {
visibility: hidden;
}
.visible-element {
background-color: lightblue;
padding: 20px;
}
</style>
</head>
<body>
<div class="visible-element">Этот элемент видим.</div>
<div class="hidden-element">Этот элемент скрыт, но сохраняет место.</div>
<div class="visible-element">Этот элемент тоже видим и расположен после скрытого элемента.</div>
</body>
</html>


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

Альтернативы
display: none;
Это свойство полностью удаляет элемент из документа, как если бы его не было, освобождая занимаемое им место.
opacity: 0;
Это свойство делает элемент полностью прозрачным, но элемент остается интерактивным и занимает место.

👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Безопасность веб-приложений. Разведка, защита, нападение, 2 изд.

Три столпа безопасности приложений — разведка, нападение и защита. Во втором издании Эндрю Хоффман рассматривает десятки смежных тем, от новейших типов атак и средств защиты до моделирования угроз, жизненного цикла безопасной разработки ПО (SSDL/SDLC) и архитектуры нулевого доверия. Вы получите подробную информацию об эксплойтах и средствах защиты от атак с использованием GraphQL, облачных технологий и доставки контента (CDN). В главы, посвященные атакам и их предотвращению, добавлены сведения для более продвинутых читателей.

👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Обычный рабочий день фронтендера

👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Большая кладовая онлайн-курсов

Stepik – незаменимый спутник для тех, кто работает удаленно и любит путешествовать, так как помогает учиться в любой точке мира.

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

У Stepik есть свой телеграм-канал, в котором они рассказывают об авторских курсах (как платных, так и бесплатных), а также публикует полезные статьи и ссылки. У них есть такие подборки курсов:

- Разработка на Python
- Дизайн и графика
- Тестирование ПО
- Работа с данными

Подпишитесь на stepik_courses и найдите интересующий курс для себя!

Подписаться

#реклама 16+
О рекламодателе

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Что такое шаблонные литералы, и для чего они нужны?

Были введены в ECMAScript 2015 (ES6) и представляют собой улучшение стандартных строк в JavaScript. Они облегчают работу с строками, предоставляя более удобный синтаксис для создания многострочных строк, интерполяции переменных и встроенных выражений.

Примеры использования

Интерполяция переменных и выражений
Шаблонные литералы позволяют встраивать переменные и выражения внутрь строк с помощью синтаксиса ${}.

const name = 'Alice';
const age = 25;

const greeting = `Hello, my name is ${name} and I am ${age} years old.`;

console.log(greeting);
// Вывод: Hello, my name is Alice and I am 25 years old.


Многострочные строки

Шаблонные литералы позволяют создавать многострочные строки без необходимости использования символов переноса строки (\n).
const multiLineString = `This is a string
that spans across
multiple lines.`;

console.log(multiLineString);
// Вывод:
// This is a string
// that spans across
// multiple lines.


Встроенные выражения

Внутри шаблонных литералов можно использовать любые JavaScript-выражения.
const a = 5;
const b = 10;

const result = `The sum of ${a} and ${b} is ${a + b}.`;

console.log(result);
// Вывод: The sum of 5 and 10 is 15.


Вызов функций внутри шаблонных литералов
Можно вызывать функции и методы внутри шаблонных литералов.
function toUpperCase(str) {
return str.toUpperCase();
}

const name = 'Alice';

const loudGreeting = `Hello, ${toUpperCase(name)}!`;

console.log(loudGreeting);
// Вывод: Hello, ALICE!


Тегированные шаблонные литералы

Тегированные шаблонные литералы позволяют обработать строку с помощью функции перед ее окончательной интерпретацией.
function tag(strings, ...values) {
console.log(strings);
console.log(values);
return 'Tagged template';
}

const name = 'Alice';
const age = 25;

const taggedResult = tag`Name: ${name}, Age: ${age}`;

console.log(taggedResult);
// Вывод:
// [ 'Name: ', ', Age: ', '' ]
// [ 'Alice', 25 ]
// Tagged template


👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Sort array by string length

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

Пример:

["Telescopes", "Glasses", "Eyes", "Monocles"]  //   ["Eyes", "Glasses", "Monocles", "Telescopes"]


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

👉 @frontendInterview

Читать полностью…

Frontend Interview - собеседования по Javascript / Html / Css

Офисы от 360 000 ₽/м² с НДС в БЦ TALLER. м.Павелецкая

TALLER - Новая высота вашего бизнеса! Офисы А класса.

Павелецкий деловой район. 1 км до Садового кольца. Высокая стадия готовности. Помещения под любой тип бизнеса площадью от 64 до 1840 м² в шаговой доступности от набережной.

Рассрочка 0% от застройщика. Продажа по ДДУ. От 360 000 ₽/м².

Выгода до 25% на офисы площадью от 300 м²!

Перейти на сайт

Проектная декларация на сайте https://наш.дом.рф/. Застройщик: ООО "Специализированный застройщик "ТАЛЛЕР"

#реклама
tr-8.ru

О рекламодателе

Читать полностью…
Subscribe to a channel