Logo
TGCATALOG
Catálogo Selecciones Blog
Preguntas de entrevista

Preguntas de entrevista

Preguntas de entrevista frontend al azar.

Sin valoraciones
566
29.10.2026
566
29.10.2026
Sin valoraciones
566
29.10.2026
Redirección segura vía bot
О канале

Preguntas de entrevista frontend al azar.

Подписчиков 17,451
Тематика Tecnología
Язык Español

También te recomendamos

Kekaton AI  Voz en off y clon de voz
Kekaton AI Voz en off y clon de voz
Bot

bot de IA para clonar texto a voz y voz en Telegram. Cree audio utilizando la red neuronal de forma rápida y fácil.

Descripción

Colección de preguntas de frontend: JavaScript, marcos, rendimiento, accesibilidad. Las respuestas detalladas ayudarán a pasar con confianza las entrevistas.

Últimas publicaciones

Preguntas de entrevista
Preguntas de entrevista
🔒Открыть пост
и посмотреть медиа
🤔 Какие проблемы решает eventloop? Event Loop (Цикл событий) – это механизм, который позволяет JavaScript работать асинхронно, обрабатывать события и не блокировать основной поток выполнения. Он решает несколько важных проблем, которые были бы сложны без него. 🚩JavaScript однопоточный, но нужно выполнять асинхронные задачи JavaScript работает в одном потоке, то есть выполняет код последовательно. Если одна операция занимает много времени (например, загрузка данных с сервера), выполнение всего кода остановилось бы, пока задача не завершится. Это привело бы к зависанию страницы. Event Loop позволяет выполнять тяжёлые операции (например, запросы на сервер, таймеры) асинхронно, не блокируя основной поток. console.log("1: Перед запросом"); setTimeout(() => { console.log("2: Данные загружены"); }, 2000); console.log("3: После запроса"); Вывод в консоль 1: Перед запросом 3: После запроса 2: Данные загружены (спустя 2 секунды) 🚩Обработка пользовательских событий без зависаний Если бы JavaScript не мог обрабатывать события асинхронно, то нажатия кнопок, прокрутка страницы и другие действия зависали бы, пока выполняется тяжёлая операция. Event Loop ставит события (например, click, keydown) в очередь и обрабатывает их только когда основной поток свободен. document.querySelector("button").addEventListener("click", () => { console.log("Кнопка нажата!"); }); 🚩Загрузка данных без блокировки страницы Когда мы загружаем данные с сервера (fetch, setTimeout, setInterval), они не приходят мгновенно. Без Event Loop браузер бы зависал в ожидании ответа. Асинхронные запросы (fetch, XMLHttpRequest) выполняются в фоновом режиме. Когда ответ готов, он помещается в очередь задач и обрабатывается, когда основной поток освободится. console.log("Запрос данных..."); fetch("Ссылка скрыта .then(response => response.json()) .then(data => console.log("Данные получены:", data)); console.log("Код выполняется дальше!"); Вывод Запрос данных... Код выполняется дальше! (Спустя время) Данные получены: {id: 1, title: "..."} 🚩Обход блокировки в тяжёлых вычислениях Если в коде идёт сложная операция (например, сложные вычисления или рендеринг огромного списка), интерфейс зависнет. Можно разбить задачу на части и выполнять её постепенно с помощью setTimeout или requestAnimationFrame. let count = 0; function heavyTask() { for (let i = 0; i < 1e6; i++) { count++; } console.log("Часть работы выполнена!"); if (count < 5e6) { setTimeout(heavyTask, 0); // Даем Event Loop обработать другие задачи } } heavyTask(); Ставь 👍 и забирай 📚 Базу знаний
Preguntas de entrevista
Preguntas de entrevista
🔒Открыть пост
и посмотреть медиа
🤔 Как задать Flexbox? Нужно установить контейнеру свойство display: flex. Его содержимое становится flex-элементами, которые подчиняются гибкой системе распределения. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Preguntas de entrevista
Preguntas de entrevista
🔒Открыть пост
и посмотреть медиа
🤔 Зачем создавались библиотеки react и другие? Библиотеки, такие как React, создавались для упрощения и оптимизации процесса разработки пользовательских интерфейсов (UI). Вот несколько ключевых причин, почему создавались React и другие библиотеки: 🟠Повышение эффективности разработки Написание большого количества кода вручную для создания динамических веб-страниц может быть громоздким и ошибочным. React позволяет разбивать интерфейс на отдельные компоненты, которые можно повторно использовать и комбинировать. Это снижает объем дублирующегося кода и упрощает его сопровождение. 🟠Улучшение производительности Постоянное обновление DOM (Document Object Model) может быть медленным и ресурсоемким. React использует виртуальный DOM, который минимизирует количество реальных изменений в DOM, обновляя только те элементы, которые действительно изменились. 🟠Облегчение работы с состоянием приложения Управление состоянием больших и сложных приложений может стать хаотичным. React предоставляет механизмы для удобного управления состоянием компонентов с помощью useState, useReducer, и других хуков. Это делает логику управления состоянием более ясной и предсказуемой. 🟠Улучшение масштабируемости и поддерживаемости кода По мере роста приложения, код может стать сложным для понимания и изменения. Подход к компонентам в React позволяет разработчикам легче разделять задачи и работать над отдельными частями приложения независимо друг от друга. Это улучшает масштабируемость и поддерживаемость кода. 🟠Сообщество и экосистема Наличие обширного сообщества и инструментов для разработки. React имеет большое сообщество разработчиков, множество библиотек и инструментов, которые упрощают разработку и интеграцию различных функций в приложения. import React, { useState } from 'react'; function Counter() { // Определение состояния count с начальным значением 0 const [count, setCount] = useState(0); return ( Вы кликнули {count} раз(а) setCount(count + 1)}> Кликни меня ); } export default Counter; Ставь 👍 и забирай 📚 Базу знаний
Preguntas de entrevista
Preguntas de entrevista
🔒Открыть пост
и посмотреть медиа
🤔 Какой формат видеофайлов сейчас поддерживается HTML5? Современные браузеры поддерживают: - MP4 (H.264/AAC) — наиболее универсальный; - WebM (VP8/VP9) — открыт и эффективен; - Ogg (Theora/Vorbis) — реже используется, поддерживается не везде. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Preguntas de entrevista
Preguntas de entrevista
🔒Открыть пост
и посмотреть медиа
🤔 Как браузер понимает что картинка является картинкой? Браузер понимает, что файл является картинкой, благодаря MIME-типу, расширению файла и контексту его использования в HTML. Рассмотрим подробнее. 🟠MIME-тип (Media Type) MIME-тип (Multipurpose Internet Mail Extensions) сообщает браузеру, какой тип контента загружается. Например: - image/png → PNG - image/jpeg → JPEG - image/svg+xml → SVG - image/gif → GIF - image/webp → WebP Content-Type: image/png 🟠Расширение файла Хотя MIME-тип важнее, браузер также может ориентироваться на расширение файла (.jpg, .png, .gif). 🟠HTML-теги и атрибуты Когда браузер встречает в коде такие теги, как , , , он ожидает, что внутри будет изображение. 🟠Формат и сигнатура файла Даже если расширение и MIME-тип указаны неверно, браузер может проверить сигнатуру файла (первые байты). Например: - PNG-файл всегда начинается с байтов 89 50 4E 47 (что означает "PNG" в ASCII). - JPEG — FF D8 FF. - GIF — 47 49 46 38 (GIF89a). Ставь 👍 и забирай 📚 Базу знаний
Preguntas de entrevista
Preguntas de entrevista
🔒Открыть пост
и посмотреть медиа
🤔 Как отслеживаем активность пользователя? - События (click, scroll, mousemove). - Инструменты: Yandex.Metrika, Google Analytics, PostHog. - Собственные endpoint'ы POST /track. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Preguntas de entrevista
Preguntas de entrevista
🔒Открыть пост
и посмотреть медиа
🤔 Как методы будут у api? В API (Application Programming Interface) обычно используются HTTP-методы, которые определяют, какое действие нужно выполнить с ресурсом (данными). 🚩Примеры использования 🟠`GET` – Получение данных Запрашиваем список пользователей: GET /users HTTP/1.1 Host: api.example.com Ответ (JSON) [ { "id": 1, "name": "Alice" }, { "id": 2, "name": "Bob" } ] 🟠`POST` – Создание нового ресурса Отправляем данные нового пользователя: POST /users HTTP/1.1 Host: api.example.com Content-Type: application/json { "name": "Charlie", "email": "[email protected]" } Ответ (201 Created) { "id": 3, "name": "Charlie", "email": "[email protected]" } 🟠`PUT` – Полное обновление ресурса Заменяем пользователя с ID 1: PUT /users/1 HTTP/1.1 Host: api.example.com Content-Type: application/json { "name": "Alice Smith", "email": "[email protected]" } 🟠`PATCH` – Частичное обновление ресурса Меняем только имя пользователя 1, не трогая email: PATCH /users/1 HTTP/1.1 Host: api.example.com Content-Type: application/json { "name": "Alice Johnson" } 🟠`DELETE` – Удаление ресурса Удаляем пользователя с ID 2: DELETE /users/2 HTTP/1.1 Host: api.example.com Ставь 👍 и забирай 📚 Базу знаний
Preguntas de entrevista
Preguntas de entrevista
🔒Открыть пост
и посмотреть медиа
🤔 Когда используются переменные var, let, const? - var: устаревший способ, имеет функцию как область видимости и может быть переопределён. - let: используется для переменных, которые могут изменяться, имеет блочную область видимости. - const: для неизменяемых переменных (значение не может быть переназначено). Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Preguntas de entrevista
Preguntas de entrevista
🔒Открыть пост
и посмотреть медиа
🤔 Почему map используют чаще, чем объект? Хотя объекты {} исторически использовались как ассоциативные массивы (ключ-значение), у Map есть ряд преимуществ, которые делают его более удобным в большинстве случаев. 🟠`Map` может использовать любые типы данных в качестве ключей В объектах {} ключи всегда автоматически приводятся к строке. const obj = {}; const key1 = {}; const key2 = {}; obj[key1] = "value1"; obj[key2] = "value2"; console.log(obj); // { '[object Object]': 'value2' } console.log(obj[key1]); // "value2" (ключи перезаписались, потому что оба стали "[object Object]") Пример с Map: const map = new Map(); map.set(key1, "value1"); map.set(key2, "value2"); console.log(map.get(key1)); // "value1" console.log(map.get(key2)); // "value2" 🟠`Map` хранит порядок ключей В объекте {} порядок ключей не гарантируется (особенно для числовых ключей). const obj = { 2: "two", 1: "one", 3: "three" }; console.log(Object.keys(obj)); // ["1", "2", "3"] (порядок числовых ключей изменился!) Пример с Map const map = new Map(); map.set(2, "two"); map.set(1, "one"); map.set(3, "three"); console.log([...map.keys()]); // [2, 1, 3] (порядок сохраняется!) 🟠`Map` быстрее при частых добавлениях/удалениях Объекты {} оптимизированы для хранения структуры данных, но операции delete и Object.keys(obj).length могут быть медленными, потому что движок JavaScript выполняет дополнительные проверки. Разница в скорости В Map операции .set(), .get(), .delete() выполняются быстрее. В объекте {} delete obj[key] может работать медленнее, так как JavaScript оптимизирует объекты для других целей. 🟠У `Map` есть удобные методы Объект {} не имеет встроенных методов для работы с ключами и значениями. Чтобы, например, узнать размер объекта, приходится использовать Object.keys(obj).length. const map = new Map(); map.set("a", 1); map.set("b", 2); console.log(map.size); // 2 console.log(map.has("a")); // true console.log(map.delete("b")); // true (удалит "b") В объекте {} const obj = { a: 1, b: 2 }; console.log(Object.keys(obj).length); // 2 (нужно вызывать Object.keys()) console.log(obj.hasOwnProperty("a")); // true (менее удобный синтаксис) delete obj.b; // Удаление ключа 🟠`Map` не имеет проблем с прототипами В объекте {} могут быть неожиданные проблемы, если ключ совпадает с именем встроенного метода. const obj = {}; console.log(obj.toString); // [Function: toString] (унаследованное свойство!) console.log(obj["toString"]); // [Function: toString] (может вызвать баги) Чтобы обойти это, приходится делать так const obj = Object.create(null); // Теперь у объекта нет прототипа obj.toString = "custom"; console.log(obj.toString); // "custom" В Map таких проблем нет const map = new Map(); map.set("toString", "custom"); console.log(map.get("toString")); // "custom" (никаких багов!) Ставь 👍 и забирай 📚 Базу знаний
Preguntas de entrevista
Evolución de suscriptores
+-1.2% últimos 30 días
Actuales
17,451
Hace un mes
17,655
Crecimiento medio
+-7 / día
Actualizado
hace 2 días

Reseñas de canal Preguntas de entrevista

Inicia sesión para dejar una reseña

Solo los usuarios registrados pueden compartir su opinión.

Aún no hay reseñas

¡Sé el primero en compartir tu experiencia con este recurso!

Recursos similares

Loading
Cambiar a tema claro
Inicio Catálogo Selecciones Blog Entrar