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
Что выведется в консоль?
Anonymous Quiz
60%
John
27%
undefined
1%
null
12%
Error
5
Как вы создаете и поддерживаете единый стиль и согласованность в дизайне с помощью CSS на больших проектах?

Для создания и поддержания единого стиля и согласованности в дизайне с помощью CSS на больших проектах я использую следующие подходы:

1. Использование стайл-гайдов: это документы, которые описывают правила написания CSS кода и оформления элементов интерфейса. Они помогают установить единый стиль и согласованность в дизайне на всем проекте.

2. Использование переменных и миксинов: это позволяет упростить написание CSS кода и установить единый стиль для цветов, шрифтов, размеров и других параметров элементов интерфейса. Использование переменных и миксинов также упрощает поддержку и масштабирование кода.

3. Использование компонентного подхода: это позволяет разбить интерфейс на независимые компоненты, которые можно переиспользовать в разных частях сайта. Каждый компонент имеет свой собственный CSS код, который легко поддерживать и масштабировать.

4. Использование системы версионирования: это позволяет контролировать изменения в CSS коде и откатываться к предыдущим версиям в случае ошибок или проблем.

5. Использование проверки на соответствие стайл-гайдам: это позволяет автоматически проверять CSS код на соответствие правилам, описанным в стайл-гайдах. Например, с помощью инструментов типа Stylelint или ESLint.

👉 @frontendInterview
👍74
React Application Architecture for Production: Learn best practices and expert tips to deliver enterprise-ready React web apps (2023)

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

👉 @frontendInterview
👍91🔥1
Разъединить цифры

Вам дана строка, состоящая из цифр на английском "склеенных" друг с другом. Создайте функцию, которая разъединит цифры.

Примеры:
"three"
// "three"

"eightsix"
// eight six"

"fivefourseven"
// "five four seven"

"ninethreesixthree"
// "nine three six three"

"fivethreefivesixthreenineonesevenoneeight"
// "five three five six three nine one seven one eight"


👉 @frontendInterview
👍32
Как вы можете использовать промисы в JavaScript для обработки асинхронных операций, и какие функции используются для работы с промисами?

Промисы - это механизм, который позволяет обрабатывать асинхронные операции в JavaScript. Они позволяют управлять выполнением асинхронного кода и получать результаты, когда они готовы. Промисы имеют три состояния: ожидание (pending), выполнено (fulfilled) и отклонено (rejected).

Для создания промиса используется конструктор Promise. Конструктор принимает функцию обратного вызова (callback), которая содержит асинхронный код. Функция обратного вызова должна вызвать одну из двух функций обратного вызова, в зависимости от того, успешно ли выполнена операция: resolve, если операция была выполнена успешно, и reject, если операция не была выполнена.

Пример:
 const promise = new Promise((resolve, reject) => {
setTimeout(() => {
resolve('Operation completed successfully');
}, 1000);
});

promise.then((result) => {
console.log(result);
}).catch((error) => {
console.log(error);
});


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

Существуют также функции обработки промисов, такие как Promise.all, Promise.race, Promise.resolve и Promise.reject. Promise.all позволяет выполнить несколько промисов одновременно и получить результаты, когда все они выполнены. Promise.race позволяет выполнить несколько промисов одновременно и получить результат, когда первый из них выполнен. Promise.resolve и Promise.reject позволяют создавать промисы, которые сразу же выполняются успешно или неуспешно.

👉 @frontendInterview
👍17
Какой метод массива используется для объединения двух или более массивов в один?
Anonymous Quiz
76%
concat()
18%
join()
4%
push()
1%
pop()
👍6😁1
Какие преимущества и недостатки имеет использование стрелочных функций в JavaScript?

Стрелочные функции - это синтаксис функций в JavaScript, который был добавлен в ES6. Они представляют собой более краткий и удобный способ определения функций, который позволяет избежать некоторых проблем, связанных с контекстом this.

Преимущества стрелочных функций включают в себя:
1. Краткость и удобство использования. Стрелочные функции позволяют определить функцию в одну строку, что делает код более компактным и легче читаемым.
 const sum = (a, b) => a + b;


2. Отсутствие привязки контекста this. Стрелочные функции не имеют своего собственного контекста this, что позволяет избежать проблем с его потерей при передаче функции в качестве аргумента или при использовании методов объектов.
 const obj = {
name: 'John',
greet: function() {
setTimeout(() => {
console.log(Hello, ${this.name}!);
}, 1000);
}
};

obj.greet(); // Hello, John!

Недостатки стрелочных функций включают в себя:
1. Отсутствие возможности использования ключевого слова arguments. Стрелочные функции не имеют своего собственного объекта arguments, что может затруднить работу с аргументами функции.

2. Невозможность использования в качестве конструктора. Стрелочные функции не могут быть использованы в качестве конструкторов, что ограничивает их использование в некоторых случаях.

3. Необходимость использования круглых скобок при передаче одного аргумента. Если у функции есть только один аргумент, то его необходимо передавать в круглых скобках, что может быть неудобно.
 const double = (x) => x * 2; // ОК
const double = x => x * 2; // ОК
const double = x, y => x * 2 + y; // ОШИБКА


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

👉 @frontendInterview
👎16👍8
Сначала появляется идея, затем дизайн-макет, а потом фронтенд-разработчик  пишет код с использованием библиотек и фреймворков и превращает всё в удобный сервис или сайт.

На курсе Яндекс Практикума «Фронтенд-разработчик» вы за 10 месяцев научитесь:

• Писать код на HTML, CSS, JavaScript и TypeScript
• Создавать сайты и веб-приложения под любые задачи бизнеса
• Использовать библиотеку React
• Разбираться в технических заданиях от заказчиков и предлагать им оптимальные решения
• Работать в команде с помощью Git
• Тестировать сайты и веб-приложения, размещать их в интернете, устранять ошибки
Практика на реальных кейсах, сопровождение команды специалистов и работающие проекты в портфолио. Карьерный центр поможет вам грамотно составить резюме, презентовать себя с выгодных сторон, отрепетировать собеседование, а оффер вы уже получите сами.

Начать учиться

Реклама АНО ДПО Образовательные технологии Яндекса, ИНН 7704282033, erid LjN8KVEK8
2😁1
Какой метод объекта используется для получения всех ключей объекта в виде массива?
Anonymous Quiz
77%
keys()
5%
values()
7%
entries()
10%
keysAsArray()
1👍1
Можно ли создать анимированный градиентный фон на CSS, не используя дополнительных библиотек?
Anonymous Quiz
94%
Да
6%
Нет
👍21
Какие принципы функционального программирования вы можете применить в JavaScript?

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

1. Неизменяемость данных - это означает, что данные не могут быть изменены после создания. Вместо этого, любые изменения данных создают новые версии данных.

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

3. Функции высшего порядка - это функции, которые могут принимать другие функции в качестве аргументов или возвращать другие функции.

4. Каррирование - это процесс превращения функции с несколькими аргументами в последовательность функций с одним аргументом. В JavaScript это можно реализовать с помощью метода bind().

5. Рекурсия - это процесс вызова функции из самой себя.

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

👉 @frontendInterview
👍28
Practical Highcharts with Angular: Your Essential Guide to Creating Real-time Dashboards, 2nd Edition (2023)

Научитесь создавать потрясающие анимированные и интерактивные диаграммы с помощью Highcharts и Angular. В этом обновленном издании на основе имеющихся знаний HTML, CSS и JavaScript вы сможете создавать впечатляющие информационные панели, которые будут работать во всех современных браузерах.

👉 @frontendInterview
👍4
Посчитайте девятки

Я хочу посчитать от 0 до n. Сколько раз мне встретится цифра 9 ?
9, 19, 91... добавляют девятку
99, 199, 919... добавляют две девятки
И так далее

Примеры:
number9(8) //вернет 0
number9(9) //вернет 1
number9(10) //вернет 1
number9(98) //вернет 18
number9(100) //вернет 20


👉 @frontendInterview
👍7👎6
Что такое интерфейсы (interfaces) в TypeScript и как они используются?

Интерфейсы в TypeScript - это способ определения формы (shape) объекта. Они позволяют определять типы для объектов и классов, что упрощает проверку типов и предотвращает ошибки во время выполнения.

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

Использование интерфейсов позволяет более точно определять типы данных в приложении, что упрощает отладку и обеспечивает более надежную работу приложения.

👉 @frontendInterview
👍13
Какой оператор в TypeScript используется для проверки типа данных?
Anonymous Quiz
74%
typeof
13%
instanceof
10%
is
3%
check
👎56🤔42
Какие инструменты вы используете для тестирования фронтенд-кода?

Для тестирования фронтенд-кода я использую инструменты, такие как Jest, Mocha, Chai, Enzyme, Puppeteer, Cypress и другие. Они позволяют создавать тесты для различных аспектов кода, таких как логика, стили, взаимодействие с API и т.д.

Я также использую инструменты для автоматического тестирования, такие как Travis CI и Gitlab CI, чтобы убедиться, что код проходит все тесты на каждом коммите.

👉 @frontendInterview
👎4👍1