Frontend Interview - собеседования по Javanoscript / Html / Css – Telegram
Frontend Interview - собеседования по Javanoscript / Html / Css
11.4K subscribers
2.1K photos
118 videos
319 files
530 links
Канал для подготовки к собеседованиям по фронтенду

Админ, сотрудничество, реклама: @seniorFrontPromo, @maria_seniorfront

Купить рекламу: https://telega.in/c/frontendinterview

Канал в реестре РКН:
https://rknn.link/su
Download Telegram
Верстаешь?

Оцени 7 причин пройти наш бесплатный интенсив по Frontend-разработке:

1. Ты сверстаешь веб-сайт на HTML + CSS;
2. Оживишь страницу с помощью JavaScript;
3. Используешь фронтенд-фреймворк Angular;
4. Подключишь Backend и загрузишь сайт на хостинг;
5. Получишь советы по доработке своего проекта;
6. Добавишь в портфолио 1 качественный проект;
7. Получишь в подарок чек-лист «45 мест для поиска работы».

А главное, ты проведёшь 7 дней в приятной компании Fullstack-разработчика с 10-летним стажем – Романа Чернова.

👉 Проскочить на интенсив бесплатно

Начинаем 18 января.
2👎2
В примере у элемента .child вычисленное значение свойства display будет inline-block. Да или нет?
Anonymous Quiz
66%
Да
34%
Нет
🤔15👍13
Дайте старт вашей карьере с нашим бесплатным курсом по JavaScript!

🎓 Курс включает 39 уроков, 46 упражнений и 129 тестов для закрепления знаний. Вы освоите создание программ с использованием основных конструкций языка, сможете составлять программы из нескольких модулей и научитесь анализировать ошибки в коде с помощью отладочной печати.

💡 Научитесь не только теории, но и применять знания на практике. Поддержка в «Обсуждениях» поможет вам разобраться с темами, которые вызывают трудности.

Обучение с самого нуля, с акцентом на практику. Подходит для начинающих программистов! Добро пожаловать в мир JavaScript😉

Реклама. АНПОО "ХЕКСЛЕТ КОЛЛЕДЖ". ИНН 7839056670.
👎1
Что такое prop drilling?

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

// Parent component
const Parent = () => {
const data = "Hello, World!";

return (
<div>
<ChildA data={data} />
</div>
);
};

// Intermediate ChildA component
const ChildA = ({ data }) => {
return (
<div>
<ChildB data={data} />
</div>
);
};

// Leaf ChildB component
const ChildB = ({ data }) => {
return <div>{data}</div>;
};


В этом примере проп data передается из компонента Parent в ChildA, а затем из ChildA в ChildB, даже если ChildA не использует проп напрямую. Это может стать проблемой при наличии множества уровней вложенности или когда доступ к данным должен осуществляться компонентами, находящимися ниже по дереву компонентов. Это может усложнить поддержку и понимание кода.
Проп дриллинг можно смягчить, используя другие шаблоны, такие как библиотеки управления контекстом или состоянием, такие как Redux или MobX. Эти подходы позволяют компонентам получать доступ к данным без необходимости передачи входных параметров через каждый промежуточный компонент.

👉 @frontendInterview
👍63
Web Application Security

Несмотря на то, что доступно много ресурсов с информацией по обеспечению безопасности сети и ИТ, подробные знания о безопасности современных веб-приложений не были структурированы - до выхода данной книги. Это практическое руководство содержит описывает разнообразные концепции информационной безопасности, которые разработчики программного обеспечения могут легко освоить и применить.

👉 @frontendInterview
Заменить букву на ее позицию в алфавите

В этой задаче вам нужно, имея строку, заменить каждую букву на ее позицию в алфавите.
Если что-то в тексте не является буквой, игнорируйте это и не возвращайте его.
"a" = 1, "b" = 2, и т.д.

Пример:
alphabetPosition("abc.")
вернет "1 2 3"

👉 @frontendInterview
2
В чем разница между spread-оператором и rest-оператором?
Spread-оператор и rest-оператор - это два разных оператора, которые используются в JavaScript для работы с массивами и объектами.

Spread-оператор (...):

- Распространяет элементы массива или свойства объекта.
- Используется для создания нового массива или объекта, содержащего элементы или свойства исходного массива или объекта.
- Распаковывает элементы массива или свойства объекта, позволяя передавать их в другие функции или объединять с другими массивами или объектами.
Пример:
 const numbers = [1, 2, 3];
const newArray = [...numbers, 4, 5]; // [1, 2, 3, 4, 5]
const person = { name: 'John', age: 30 };
const newPerson = { ...person, city: 'New York' }; // { name: 'John', age: 30, city: 'New York' }


Rest-оператор (...):
- Собирает оставшиеся аргументы функции в массив.
- Используется для объявления параметра функции, который будет содержать все оставшиеся аргументы, переданные при вызове функции.
Пример:
function sum(...numbers) {
let total = 0;
for (let number of numbers) {
total += number;
}
return total;
}

console.log(sum(1, 2, 3, 4, 5)); // 15

function printNames(first, last, ...middle) {
console.log('First name:', first);
console.log('Last name:', last);
console.log('Middle names:', middle);
}

printNames('John', 'Doe', 'Smith', 'Johnson', 'Williams');
// First name: John
// Last name: Doe
// Middle names: ['Smith', 'Johnson', 'Williams']


👉 @frontendInterview
👍203😁3🔥2👏1
Как правильно задать overflow для body чтобы убрать горизонтальный и сохранить вертикальный скролл?
Anonymous Quiz
15%
overflow: hidden;
63%
overflow-x: hidden;
14%
overflow-y: hidden;
8%
overflow-x-y: auto hidden;
🥰8👏31
Какие основные шаги выполняет браузер для отображения веб-страницы?

1. Ввод URL: Пользователь вводит URL (Uniform Resource Locator) в адресную строку браузера. URL указывает на веб-страницы, которую пользователь хочет посетить.

2. DNS-запрос: Браузер отправляет DNS-запрос (Domain Name System) на DNS-сервер, чтобы получить IP-адрес сервера, на котором хранится веб-страница. DNS-сервер преобразует доменное имя (например, www.example.com) в соответствующий IP-адрес.

3. Установка соединения: Браузер устанавливает TCP-соединение с сервером, используя полученный IP-адрес. Это позволяет браузеру отправлять и получать данные от сервера.

4. Запрос страницы: Браузер отправляет HTTP-запрос (Hypertext Transfer Protocol) на сервер, запрашивая веб-страницу. Запрос может содержать различные параметры, такие как метод запроса (GET, POST и т. д.), заголовки и тело запроса.

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

6. Рендеринг страницы: Браузер получает ответ от сервера и начинает обрабатывать его. Он анализирует HTML-код страницы, строит DOM (Document Object Model) - внутреннее представление страницы, и создает дерево элементов.

7. Загрузка ресурсов: Браузер загружает все связанные ресурсы, такие как изображения, стили CSS, скрипты JavaScript и другие файлы, указанные в HTML-коде страницы.

8. Отображение страницы: Браузер использует полученные ресурсы и информацию о стилях для отображения страницы на экране. Он располагает элементы в соответствии с их CSS-свойствами, применяет шрифты, цвета и другие стили, и отображает содержимое страницы.

👉 @frontendInterview
👍41
Позвольте себе работать, не вставая с кровати! Углубите знания в веб-разработке, получите практичные инсайты и создавайте новые крутые проекты!


Регистрируйтесь: https://epic.st/ey6x7

Вы научитесь:
— создавать веб-страницы, используя язык разметки HTML и технологию CSS;
— реализовывать серверную часть (backend) веб-приложений на языке PHP;
— работать с базой данных MySQL при помощи языка запросов SQL;
— создавать приложения на языке программирования JavaScript;
— размещать сайты в интернете.

📌Спикер — Даниил Пилипенко, основатель и директор центра подбора IT-специалистов SymbioWay. 19 лет работает в сфере Java и веб-разработки, руководит командами разработки в разных проектах.

🎁Подарки:
— сертификат на скидку 10 000 рублей на любой курс;
— доступ к изучению английского языка на год;
— 5 полезных подборок материала;
— персональная карьерная консультация.


Реклама. ЧОУ ДПО «Образовательные технологии «Скилбокс (Коробка навыков)», ИНН: 9704088880
👎2
Назовите способ изменения opacity для всех строк таблицы кроме той, на которую навёл пользователь.
Anonymous Quiz
54%
tbody:hover tr:not(:hover)
16%
tbody:hover:not(:hover)
11%
tbody:not(:hover):hover
19%
tr:not(:hover) tbody:hover
👍121
Какой из методов жизненного цикла Vue вызывается сразу после инициализации экземпляра, перед установкой наблюдения за данными и механизмов слежения и событий?
Anonymous Quiz
31%
beforeCreate
22%
created
47%
beforeMount
👍4
Что такое IIFE (Immediately Invoked Function Expression)?

IIFE (Immediately Invoked Function Expression) - это выражение функции, которое вызывается немедленно после его определения. Оно позволяет создавать локальную область видимости для переменных и функций, чтобы избежать конфликтов имен и сохранить приватность данных.

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

Пример:
 (function() {
// Код, который будет выполнен немедленно
var x = 5;
console.log(x); // Выводит 5
})();

 // Переменные и функции, определенные внутри IIFE, не видны в глобальной области видимости
console.log(x); // ReferenceError: x is not defined

В приведенном примере, функция обернута в круглые скобки (function() { ... }), чтобы превратить ее в выражение. Затем, после закрывающей скобки, добавляются еще одни круглые скобки () для вызова функции немедленно.
IIFE может принимать аргументы, например:
 (function(name) {
console.log('Hello, ' + name);
})('John'); // Выводит 'Hello, John'

IIFE также может возвращать значение, которое может быть присвоено переменной:
 var result = (function() {
return 5 + 3;
})();

 console.log(result); // Выводит 8


Использование IIFE помогает изолировать код и предотвращает его влияние на глобальную область видимости, что способствует более безопасному и организованному коду.

👉 @frontendInterview
👍18
Multithreaded JavaScript

Готовы ли вы к разработке многопоточных приложений на JavaScript? Прочитав данную книгу, JavaScript-разработчик среднего уровня узнает о сильных и слабых сторонах API веб-исполнителей в браузерах и рабочих потоков в Node.js.
Авторы рассказывают о двух подходах к построению многопоточных приложений: на основе передачи сообщений и на основе разделяемой памяти. Описываются API для обоих случаев, объясняется, когда использовать тот или другой, а когда - их сочетание. Вы также увидите, как реализуются высокоуровневые паттерны на базе этих подходов.

👉 @frontendInterview
Basic Mathematical Operations

Ваша задача - создать функцию, которая выполняет четыре основные математические операции.
Функция должна принимать три аргумента - операция(строка/знак), значение1(число), значение2(число).
Функция должна возвращать результат в виде числа после применения выбранной операции.

Пример:
('+', 4, 7) --> 11
('-', 15, 18) --> -3
('*', 5, 5) --> 25
('/', 49, 7) --> 7

👉 @frontendInterview
😁5🔥2👎1